Taskflow Controller Counter Mechanism for Asynchronous Workitem Completion
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems face difficulties in determining when a workitem is finalized, leading to delays in transitioning to a completed state due to the asynchronous nature of task data processing, where data from one task may arrive after another, causing tasks to repeatedly process and generate data.
Innovation Solution
A method involving a taskflow controller that transmits completion requests to tasks, receives and marks processed data for subsequent tasks, changes counter values associated with each task, and determines the workitem's state based on these counter values, ensuring all tasks have completed and data is processed before declaring the workitem complete.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If tasks process data asynchronously in a taskflow, then tasks can be executed in parallel or arbitrary sequence improving productivity, but determining when the workitem is finalized becomes difficult causing delays in transitioning to completed state
Solution Approach 1:
The system implements a feedback mechanism where tasks send notifications to the taskflow controller upon completion. The controller maintains counter values for each task and receives completion notifications, using this feedback to determine when all tasks are finished and the workitem can be transitioned to completed state, thus resolving the timing uncertainty in asynchronous processing
Solution Approach 2:
The taskflow controller serves as an intermediary between individual tasks and the workitem completion determination. It receives completion notifications from tasks, updates counter values, and manages the transition to completed state, thereby coordinating asynchronous task completions without requiring tasks to directly communicate with each other
2Reliability
If the system waits for all tasks to complete before declaring workitem complete, then accuracy of completion state is improved, but productivity decreases due to sequential waiting
Solution Approach 1:
The system performs preliminary actions by having tasks send completion notifications to the taskflow controller as soon as they finish, rather than waiting for all tasks to complete. The controller proactively updates counter values and determines completion state based on these preliminary notifications, ensuring accuracy while avoiding unnecessary waiting
Solution Approach 2:
The system dynamically updates the completion state determination as tasks complete asynchronously. The taskflow controller continuously monitors counter values and adjusts the workitem state based on current task completion status, allowing the system to transition to completed state as soon as all tasks are done rather than enforcing a fixed sequential waiting pattern
3Manufacturing precision
If tasks repeatedly process and generate data due to asynchronous arrival, then data processing thoroughness is improved, but loss of time increases due to reprocessing
Solution Approach 1:
The taskflow controller implements feedback by tracking counter values for each task and receiving completion notifications. This feedback mechanism ensures that each task is processed exactly once when it completes, preventing repeated processing while maintaining data processing completeness through accurate tracking of task completion states
Data Source
AI summary
At least one example embodiment discloses a method of processing a workitem including a plurality of tasks. The method includes transmitting requests for completion to the plurality of tasks, respectively, receiving processed data from a first task of the plurality of tasks in response to the request, the processed data being marked as intended for a second task of the plurality of tasks, changing a counter value associated with the second task, each of the plurality of tasks associated with a counter value, transmitting the processed data to the second task, and determining a state of the workitem based on the counter values.


