Thread Segmentation for Network Connection Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing software development libraries, such as OpenCV, often cause applications to deadlock when encountering network errors due to hidden underlying network control entities, leading to loss of state information and requiring application restarts.
Innovation Solution
A data processing apparatus separates acquisition and processing into different threads, allowing the processing thread to terminate and restart the acquisition thread safely, maintaining state information intact and iteratively re-establishing network connections using OpenCV functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If the application uses a library function that hides underlying network control entities, then the application can use simplified functions for network operations, but the application may deadlock when network errors occur and cannot recover without restarting
Solution Approach 1:
The patent segments the application into multiple threads: an acquisition thread that handles network socket operations and a processing thread that performs application logic. This segmentation allows the acquisition thread to be restarted independently when network errors occur, while the processing thread maintains application state and continues operation, resolving the deadlock issue while keeping network operations simplified.
2Reliability
If the application restarts to recover from network deadlock, then the network connection can be re-established, but state information is lost and service is adversely affected
Solution Approach 1:
The patent extracts the network socket control entities from the main application process into a separate acquisition thread. This extraction allows the acquisition thread to be terminated and restarted to recover network connections, while the processing thread retains application state information, preventing data loss during network recovery operations.
3Reliability
If the acquisition thread is terminated to recover network connection, then the network connection can be re-established, but the thread structure becomes more complex
Solution Approach 1:
The patent implements dynamic thread management where the acquisition thread can be created, terminated, and restarted based on network conditions. The processing thread dynamically monitors the acquisition thread's health and triggers restarts when network errors are detected, providing adaptive network recovery without requiring complex static architecture.
Data Source
AI summary
In at least some example embodiments, a data processing apparatus is configured to recover a network connection within an application framework that hides sockets by separating acquisition and processing into different threads of the same process, and, thus, when the processing thread is unable to retrieve a frame from the acquisition thread, the data processing device may terminate the acquisition thread with impunity since all important application state may safely remain within the processing thread.


