<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jul 2, 2013 at 10:41 AM, Dan Bender <span dir="ltr"><<a href="mailto:danbenderr@gmail.com" target="_blank">danbenderr@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>Why not use NIF?</div><div>Encoding/decoding a single frame will probably take about 3ms.</div><div>If the NIF will bump reductions, will this be ok?</div>

</blockquote></div><div class="gmail_extra"><br></div>A NIF should run for at most 1ms. So you will have to break the frame into multiple cooperative/reentrant calls and call your NIF several times, or you need to spawn a background thread which runs the code and then replies when it is done, usually through a message.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra" style>Otherwise, you are blocking the scheduler and this is a problem which can mess up the internal scheduler timing in Erlang. This problem *might* be solved in R17 where so-called dirty schedulers will be present. These are probably able to solve this problem in another way.</div>

</div>