> "7. How do you concurrently run multiple job queues? > Would you like to be able to adjust their priorities?" > > Something like: > > q = new worker_fifo(arguments); > > creates a new queue and thread pool (its a C++ class). > The queue is linear, it isn't a priority queue. Thanks for your quick response.
How do you think about to add a (convenience) procedure to keep such a job manager running in a new pre-emptive thread? http://felix.sourceforge.net/doc/rtl/doxygen/html/classflx_1_1pthread_1_1worker__fifo.html Would you like to support that work or command objects can be sent to a target thread like that can be done with TCL scripts by the function "thread::send"? http://tcl.cvs.sourceforge.net/*checkout*/tcl/thread/doc/html/thread.html#10 > The worker_fifo's are used to serialise asynchronous > requests to objects such as timer and file descriptor > notification servers, because these requests do > system calls. All these requests are serviced > quickly without any blocking (other than the underlying > system calls) and are used to establish an ordering > from unordered requests. How do you think about to provide a service that can only execute a single task? (Calls to thread-unsafe interfaces can be wrapped by it.) Do you find my suggestion "class for function calls that are not thread safe" useful? http://groups.google.de/groups?threadm=OtKbb.127587%24mp.64498%40rwcrnsc51.ops.asp.att.net http://groups.google.de/groups?threadm=34fu29F49rvasU1%40individual.net http://groups.google.de/group/comp.programming.threads/browse_frm/thread/68c6f7f993578408 > We'd need a use case before considering priorities, > they don't make sense for any of the existing uses. Priority Scheduling in TinyOS - A Case Study http://www.cs.wustl.edu/~venkita/publications/class/tinyospriosched.pdf http://www.opengroup.org/onlinepubs/009695399/functions/pthread_setschedprio.html http://en.wikipedia.org/wiki/Priority_inheritance > It also isn't clear how prioritorisation would be > supported on an OS that has no underlying support > for RT operation. Would you like to check for the symbols "_POSIX_THREAD_PRIORITY_SCHEDULING", "_POSIX_THREAD_PRIO_INHERIT" and "_POSIX_THREAD_PRIO_PROTECT"? Another topic: Should the attribute "flx::pthread::sleep_queue_t::member_lock" become a private data member? http://felix.cvs.sourceforge.net/felix/lpsrc/flx_pthread.pak?revision=1.45&view=markup Would the code be also cleaner without the macro "ELTQ"? Does it matter that "size_changed.broadcast()" is called even if the values for "bound" and "n" are equal? Regards, Markus Elfring ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Felix-language mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/felix-language
