XmlRpcThreadedServer.cc

Go to the documentation of this file.
00001 
00007 #if defined(XMLRPC_THREADS)
00008 
00009 #include "XmlRpcThreadedServer.h"
00010 //#include "XmlRpcServerConnection.h"
00011 
00012 
00013 using namespace XmlRpc;
00014 
00015 // executeRequestThreaded:
00016 //  remove the serverConnection from the dispatcher (but don't close the socket)
00017 //  push the request onto the request queue 
00018 //   (acquire the mutex, push_back request, release mutex, incr semaphore)
00019 //  
00020 
00021 // worker::run
00022 //  while ! stopped
00023 //    pop a request off the request queue (block on semaphore/decr, acquire mutex, get request, rel)
00024 //    executeRequest (parse, run, generate response)
00025 //    notify the serverConnection that the response is available
00026 //    (the serverConnection needs to add itself back to the dispatcher safely - mutex)
00027 
00028 // How do I interrupt the dispatcher if it is waiting in a select call? 
00029 //  i) Replace select with WaitForMultipleObjects, using WSAEventSelect to associate
00030 //     each socket with an event object, and adding an additional "signal" event.
00031 //
00032 
00033 #endif // XMLRPC_THREADS
Generated on Wed May 26 16:21:15 2010 for OverSim by  doxygen 1.6.3