摘要 |
The present invention provides interprocess communication in a DBMS. The present invention provides the ability for these processes to communicate with other DBMS processes or processes external to the DBMS. A pipe is implemented as an object of the general purpose object cache. The general purpose object cache resides in the systems shared memory space. It is concurrently accessible by many sessions, or processes. A pipe is located in a shared global memory area. The present invention provides the ability to send a message (i.e., record) to a pipe, and receive a message (i.e., record) from a pipe. A pipe is located in shared memory. Shared memory can contain multiple pipes. Each pipe is comprised of a linked list of records, and linked list of sessions, an exclusivity indicator, and a session waiting indicator. Multiple sessions can access the same pipe, and each pipe can contain multiple messages. A message is sent by a sending session to a local buffer. The contents of the local buffer is sent to a pipe. The contents of a pipe, one or more records, can be accessed by getting a record from the pipe and placing it in a local buffer. The contents of the local buffer can be accessed by the requesting session.
|