version 1.41, 2006/07/07 14:43:46
|
version 1.42, 2006/08/09 21:12:59
|
|
|
*/ | */ |
Uint32 getPortNumber() const; | Uint32 getPortNumber() const; |
| |
static PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL |
static ThreadReturnType PEGASUS_THREAD_CDECL |
_listener_routine(void *param); | _listener_routine(void *param); |
| |
private: | private: |
|
|
return (portNumber); | return (portNumber); |
} | } |
| |
PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL |
ThreadReturnType PEGASUS_THREAD_CDECL |
CIMListenerService::_listener_routine(void *param) | CIMListenerService::_listener_routine(void *param) |
{ | { |
CIMListenerService *svc = reinterpret_cast < CIMListenerService * >(param); | CIMListenerService *svc = reinterpret_cast < CIMListenerService * >(param); |
|
|
// _dieNow to true and called Monitor::tickle(). We must wait until we | // _dieNow to true and called Monitor::tickle(). We must wait until we |
// can obtain the _monitorMutex, indicating that we are no longer inside | // can obtain the _monitorMutex, indicating that we are no longer inside |
// Monitor::tickle(). | // Monitor::tickle(). |
svc->_monitorMutex.lock(pegasus_thread_self()); |
svc->_monitorMutex.lock(); |
svc->_monitorMutex.unlock(); | svc->_monitorMutex.unlock(); |
delete svc; | delete svc; |
| |
|
|
{ | { |
reqCount = _svc->getOutstandingRequestCount(); | reqCount = _svc->getOutstandingRequestCount(); |
if (reqCount > 0) | if (reqCount > 0) |
pegasus_sleep(100); |
Threads::sleep(100); |
else | else |
return true; | return true; |
} | } |