Method for managing message flow in a multithreaded, message flow environment
2 Assignments
0 Petitions
Accused Products
Abstract
In one form, a method for managing message flow includes processing messages concurrently by processing nodes in a computer software application. The processing nodes include at least one set of lock acquisition, system resource access and lock release nodes interconnected in a flow path. In such a set, the nodes are interconnected in a flow path and process a respective one of the messages in a sequence defined by the flow path. The processing includes granting access to a system resource exclusively for the set'"'"'s respective message responsive to the lock acquisition node processing its respective message. The system resource is accessed for the message responsive to the set'"'"'s system resource node processing the message. The accessing of the resource for the message includes changing a certain system state. The exclusive accessing of the system resource is released responsive to the set'"'"'s lock release node processing the message.
14 Citations
26 Claims
-
1-21. -21. (canceled)
-
22. A method for managing work flows wherein messages may be processed concurrently by instructions associated with respective computer software application processing nodes, the method comprising:
-
providing logical nodes for processing on a computer system, including predefined input and termination processing nodes; providing graphical tools and a language for configuring a flow of messages on a structure of interconnected ones of the logical, processing nodes in order to create a workflow environment, wherein processing and transformation activities in the workflow environment take place in the interconnected processing nodes on the computer system such that the nodes perform operations on message data according to a work flow having a message flow path between the input and terminating nodes, wherein the predefined nodes enable concurrent instances of the work flow between the input and terminating nodes, and wherein the predefined nodes include a system resource access node for accessing a system resource outside the work flow and further include a lock acquisition node and a lock release node, but the predefined nodes do not include predefined functions for automatically maintaining integrity of the accessed system resource for the respective messages; processing a first message by a certain set of the processing nodes, the certain set of nodes being interconnected in a certain workflow defining a message flow path for processing messages of the certain workflow, including the first message; processing a second message by the certain set of processing nodes, wherein the certain workflow includes at least the respective predefined lock acquisition, system resource access, and lock release nodes, and the processing for the certain workflow includes; granting access to a system resource for messages of the certain workflow by the certain workflow'"'"'s lock acquisition node; accessing the system resource for the workflow'"'"'s messages by the certain workflow'"'"'s system resource node, wherein the accessing of the resource includes changing a certain state of the resource; and releasing the accessing of the system resource by the certain workflow'"'"'s lock release node, wherein the first and second messages are for transactions and the accessing is further responsive to identity of transactions of the first and second messages, wherein the granting of access to a system resource for the first message includes; granting a locking token, wherein the locking token identifies the transaction associated with the first message, wherein the releasing of the accessing of the system resource includes; releasing the locking token that identifies the transaction associated with the first message, wherein if the lock acquisition node for the first message has granted the first message access to the system resource, the method comprises; denying the second message access to the system resource by the certain workflow'"'"'s lock acquisition node until the certain workflow'"'"'s lock release node releases the locking token that identifies the transaction associated with the first message, responsive to the first message and the second message being for the same transaction; and granting the second message access to the system resource by the certain workflow'"'"'s lock acquisition node independently of whether the certain workflow'"'"'s lock release node has released the locking token that identifies the transaction associated with the first message, responsive to the first message and the second message being for different transactions. - View Dependent Claims (23, 24, 25, 26)
-
Specification