摘要:
In a computing environment containing a plurality of state machines that communicate by passing messages on connections, a construct called a clique controls access into a set of the state machines by worker threads that deliver the messages arriving on the connections. A clique is a collection of connections into the set of the state machines that have a common relationship for which concurrency isolation is required. Each clique has a message queue and a guard for marking the clique as busy or not busy, The guard prevents more than one thread at a time from delivering messages that arrive on connections in the clique to the set of state machines, thus ensuring concurrency isolation of the set of state machines. Messages that arrive on a connection in the clique while the clique is marked as busy are queued in the clique's message queue. The queued messages are delivered one at a time by a same worker thread that is currently busy in the clique. This operation can save a thread switch when a state machine generates an outgoing message that results in an immediate incoming message to the state machine, such as a buffer full message, and thus makes efficient use of the worker threads.
摘要:
A run-time executive of an object management system for managing execution of software components in an object execution environment uses a component context object to store intrinsic context properties related to an associated component. The run-time executive maintains an implicit association of the component context object with the application component. For example, the context properties can include a client id, an activity id, and a transaction reference. The component context object also provides an interface accessible to the associated component, with member functions for use in transaction processing, in creating additional other application components inheriting component's context properties, and in access control based on abstract user classes (roles).
摘要:
An object-based event communications system supplies an event distribution object having an outgoing-from-publisher event interface and associated with unique identifiers defined for a publisher that is programmed to fire events by calling a method on the event distribution object's outgoing-from-publisher event interface. The event communications system stores subscriptions of subscriber objects to methods of the outgoing-from-publisher event interface. On receiving a call from a publisher to its outgoing-from-publisher interface methods, the event distribution object multi-casts calls to counterpart methods of subscriber objects that have stored subscriptions to the respective outgoing-from-publisher interface methods.
摘要:
Queued component interface passing provides a way for a queued component to convey results of processing a client program's method invocations made asynchronously via a queue. A queued component recorder for a “processing” queued component operates to marshal-by-value a method invocation parameter that is reference to another queued component recorder for another “results” queued component into a data stream of recorded method invocations, which is then submitted as a message to a queue associated with the processing queued component. On receipt of the message from the queue, a queued component player for the processing queued component unmarshals the reference to the other queued component recorder and passes this reference to the processing queued component. The processing queued component uses the passed reference to invoke methods of the results queued component through its message queue, which conveys the processing queued component's results.
摘要:
An object-based event communications system supplies an event distribution object having an outgoing-from-publisher event interface and associated with unique identifiers defined for a publisher that is programmed to fire events by calling a method on the event distribution object's outgoing-from-publisher event interface. The event communications system stores subscriptions of subscriber objects to methods of the outgoing-from-publisher event interface. On receiving a call from a publisher to its outgoing-from-publisher interface methods, the event distribution object multi-casts calls to counterpart methods of subscriber objects that have stored subscriptions to the respective outgoing-from-publisher interface methods.