version 1.2, 2001/12/13 14:53:49
|
version 1.3, 2001/12/14 21:04:02
|
|
|
#define ASYNC_OPSTATE_CANCELLED 0x00000100 | #define ASYNC_OPSTATE_CANCELLED 0x00000100 |
#define ASYNC_OPSTATE_PAUSED 0x00000200 | #define ASYNC_OPSTATE_PAUSED 0x00000200 |
#define ASYNC_OPSTATE_SUSPENDED 0x00000400 | #define ASYNC_OPSTATE_SUSPENDED 0x00000400 |
#define ASYNCP_OPSTATE_RESUMED 0x00000800 |
#define ASYNC_OPSTATE_RESUMED 0x00000800 |
| |
// we need a nak response message, with an error code and exception | // we need a nak response message, with an error code and exception |
// so that the dispatcher can receive a nak from the provider manager | // so that the dispatcher can receive a nak from the provider manager |
|
|
return false; | return false; |
} | } |
| |
|
// note: lock the op node before using the context |
inline OperationContext& AsyncOpNode::get_context(void) | inline OperationContext& AsyncOpNode::get_context(void) |
{ | { |
return _operation_list; | return _operation_list; |
|
|
| |
inline void AsyncOpNode::put_request(Message *request) | inline void AsyncOpNode::put_request(Message *request) |
{ | { |
|
_mut.lock(pegasus_thread_self()); |
_request = request; | _request = request; |
|
_mut.unlock(); |
|
|
} | } |
| |
inline Message * AsyncOpNode::get_request(void) | inline Message * AsyncOpNode::get_request(void) |
{ | { |
return _request; |
Message *req = 0; |
|
_mut.lock(pegasus_thread_self()); |
|
req = _request; |
|
_mut.unlock(); |
|
return req; |
} | } |
| |
inline void AsyncOpNode::put_response(Message *response) | inline void AsyncOpNode::put_response(Message *response) |
{ | { |
|
_mut.lock(pegasus_thread_self()); |
_response = response; | _response = response; |
|
_mut.unlock(); |
|
|
} | } |
| |
inline Message * AsyncOpNode::get_response(void) | inline Message * AsyncOpNode::get_response(void) |
{ | { |
return _response; |
Message *resp; |
|
_mut.lock(pegasus_thread_self()); |
|
resp = _response; |
|
_mut.unlock(); |
|
return resp; |
} | } |
| |
inline Uint32 AsyncOpNode::read_state(void) | inline Uint32 AsyncOpNode::read_state(void) |