A Factor instance runs in a single thread. Blocking operations are done either using non blocking sockets or similar async i/o methods. Task switching occurs on i/o wait or explicit yielding. APIs like ZeroMQ must be wrapped in Factor such that they use the non-block functionality of that API. In the case of ZeroMQ you would use the functionality that allows getting a file handle you can use select/epoll on. You would use this in factor to suspend the factor thread until activity on the file handle occurs at which point the thread would wake up and continue.
-- http://www.bluishcoder.co.nz ------------------------------------------------------------------------------ Open source business process management suite built on Java and Eclipse Turn processes into business applications with Bonita BPM Community Edition Quickly connect people, data, and systems into organized workflows Winner of BOSSIE, CODIE, OW2 and Gartner awards http://p.sf.net/sfu/Bonitasoft _______________________________________________ Factor-talk mailing list Factor-talk@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/factor-talk