タイトル通り crypto:rand_uniform のサンプルを。
1番苦労したのは、モジュールのロードでした。
普通にやっていたら、「定義されていない関数だ」みたいなエラーがでました。
そこを踏まえ、サンプルの提示です。
◆モジュールのロード
ソースのコンパイル時にオプションを付ける。
使用したいモジュールが使えるようになる。
今回はcryptoモジュールなので、そのbeamがある場所を-pzのあとに指定する。
$> erlc -pz C:/erl5.9/lib/crypto-2.1/ebin test_crypto_uniform.erl
あとは、コンパイルしたモジュールを実行する。
$> erl -noshell -run test_crypto_uniform start -run init stop
◆ソース
-module(test_crypto_uniform). -compile([export_all]). %-import( crypto, [ rand_uniform/2 ] ). start() -> Rand = crypto:rand_uniform(100, 10000), io:format( "rand:~p~n", [Rand] ), timer:sleep( Rand ).