mgorlick / CRESTaceans

Experiments and documentation for building CREST infrastructure. This material is based upon work supported by the National Science Foundation under Grant No. 0820222.
http://www.isr.uci.edu/projects/crest/
5 stars 2 forks source link

Networking layer needs evented i/o #1

Closed kstrasser closed 13 years ago

kstrasser commented 13 years ago

The current algorithm:

  1. sync with a timeout on the incoming request channel
  2. if a message came in, send it
  3. check the enet event queue with a timeout of 0
  4. if an enet event came in, deal with it
  5. goto 1

this burns a lot of CPU time unnecessarily and it stops actor threads from advancing unnecessarily.

possible solutions:

  1. adopt a different network lib
  2. use places
  3. wrap enet with an event struct if possible
kstrasser commented 13 years ago

solved with change to tcp.