Commit 362b9d7
[lldb-dap] Refactoring DebugCommunication to improve test consistency. (#143818)
In DebugCommunication, we currently are using 2 thread to drive
lldb-dap. At the moment, they make an attempt at only synchronizing the
`recv_packets` between the reader thread and the main test thread. Other
stateful properties of the debug session are not guarded by a
locks/mutex.
To mitigate this, I am moving any state updates to the main thread
inside the `_recv_packet` method to ensure that between calls to
`_recv_packet` the state does not change out from under us in a test.
This does mean the precise timing of events has changed slightly as a
result and I've updated the existing tests that fail for me locally with
this new behavior.
I think this should result in overall more predictable behavior, even if
the test is slow due to the host workload or architecture differences.
---------
Co-authored-by: Ebuka Ezike <[email protected]>1 parent 6fb36db commit 362b9d7
File tree
7 files changed
+590
-397
lines changed- lldb
- packages/Python/lldbsuite/test/tools/lldb-dap
- test/API/tools/lldb-dap
- breakpoint
- cancel
- launch
- module
- output
7 files changed
+590
-397
lines changed
0 commit comments