[erlang-questions] : Subtle behaviour of Erlang scheduler

David Hopwood david.hopwood@REDACTED
Mon May 28 17:25:28 CEST 2007

Rickard Green wrote:
> Raimo Niskanen wrote:
>> I guess the solution for the problem at hand would be to make
>> sure all code for the high priority processes are loaded
>> before they are started, e.g by calling Module:module_info/0
>> on them. That trick is done by the code server itself
>> to ensure it can start without a running code server.
> Yes, this is the way to do it.
> We had a discussion about these things this morning at OTP, and we have 
> decided to leave things as they are (no propagation of prios, and leave 
> code server on prio normal).
> We reason like this: Priority levels other than normal, should normally 
> not be used. When other priority levels are used, they have to be used 
> with extreme care. The programmer have to take things like this into 
> account.

I'm surprised at this conclusion. Most code should be able to consider the
existence of the code server process as an implementation detail. Certainly
the fact that this process runs at normal priority is an implementation
detail. What other facts about the Erlang/OTP implementation might we need
to know in order to be able to reliably run code at high priority?

David Hopwood <david.hopwood@REDACTED>

More information about the erlang-questions mailing list