Local Variable Copies for Parallel Global State Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computing environments with shared variables, especially in web applications, ensuring proper operation and avoiding data conflicts between parallel processes is challenging, particularly in event-driven applications where asynchronous processing leads to issues with maintaining consistent state updates.
Innovation Solution
Deferred state mutation is implemented by creating private views of the global state for each action chain, allowing explicit computer executable instructions to modify local variables instead of the global state, which are then merged at the end of execution to resolve conflicts, thereby isolating and managing state changes effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple processes use shared variables in parallel, then productivity increases, but data conflicts and reliability deteriorate
Solution Approach 1:
The patent segments the shared global state into separate private state copies for each action chain. Instead of having multiple processes directly access and modify the same global variables, each action chain receives its own isolated copy of the state, eliminating data conflicts while maintaining parallel processing capability.
Solution Approach 2:
The patent introduces an intermediary mechanism (the state management system that creates and manages private state copies) between the action chains and the global state. This intermediary handles state isolation and mutation tracking, allowing parallel processes to operate independently while maintaining overall system consistency.
2Reliability
If private views of global state are created for each action chain, then data conflicts are avoided and reliability improves, but device complexity increases
Solution Approach 1:
The patent implements self-service by having each action chain independently manage its own private state copy. The system automatically creates, distributes, and tracks state mutations without requiring manual intervention or complex coordination mechanisms between action chains, reducing the perceived complexity for developers.
Solution Approach 2:
The patent uses copying to create private state views for each action chain instead of using complex reference management or shared memory mechanisms. This copying approach simplifies the state management model by providing clear isolation guarantees while maintaining reasonable performance through selective copying of state data.
3Ease of operation
If explicit instructions modify global state directly, then ease of operation is maintained, but data conflicts occur reducing reliability
Solution Approach 1:
The patent inverts the traditional approach by having action chains modify their private state copies instead of directly modifying the global state. The global state is updated indirectly through a coordination mechanism that reconciles mutations from multiple action chains, maintaining code simplicity while eliminating direct conflicts.
Data Source
AI summary
According to a method and a system a first action chain with a first explicit computer executable instruction that modifies a global variable is received. A second action chain with a second explicit computer executable instruction that reads the global state without modifying the global state is received. The first action chain and the second action chain implement parts of a client application. A first implicit executable instruction with a first local variable copy of the global state is created using the first explicit computer executable instruction as a first template.The client application is executed including executing the first and second action chains in parallel. The second explicit computer executable instruction using the global state is executed and the first implicit computer executable instruction using the first local variable copy is executed.


