So why:<br><br><br>Erlang (BEAM) emulator version 5.5 [source] [async-threads:0] [hipe]<br><br>Eshell V5.5  (abort with ^G)<br>1> timer:tc(count_chars,file, ["gc.txt"]).<br>{1173,116}<br>2> timer:tc(count_chars,file, ["
gc.txt"]).<br>{375,116}<br>3> T1 = erlang:now(),<br>3> count_chars:file("gc.txt"),<br>3> T2 = erlang:now(),<br>3> Time = timer:now_diff(T2, T1).<br>464<br>4> <br><br>count_chars module is one of examples on 
<a href="http://Erlang.org">Erlang.org</a><br><br><div><span class="gmail_quote">2006/8/24, Matthew Sackman <<a href="mailto:matthew@wellquite.org">matthew@wellquite.org</a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
On Thu, Aug 24, 2006 at 12:55:07PM +0100, Nebmo wrote:<br>> What is the difference between:<br>><br>> 1:<br>> {Time,_} = timer:tc(mod,fun,[arg]),<br>><br>> 2:<br>> T1 = erlang:now(),<br>> mod:fun(arg),
<br>> T2 = erlang:now(),<br>> Time = timer:now_diff(T2, T1),<br><br>locate timer.erl<br>/usr/lib/erlang/lib/stdlib-1.14/src/timer.erl<br>...<br>tc(M, F, A) -><br>    Before = erlang:now(),<br>    Val = (catch apply(M, F, A)),
<br>    After = erlang:now(),<br>    {now_diff(After, Before), Val}.<br><br>It'll be many times slower because of the apply.<br><a href="http://www.erlang.org/doc/doc-5.5/doc/efficiency_guide/functions.html">http://www.erlang.org/doc/doc-5.5/doc/efficiency_guide/functions.html
</a><br><br>Matthew<br>--<br>Matthew Sackman<br><br>BOFH excuse #438:<br>sticky bit has come loose<br></blockquote></div><br>