Skip to content

fix: avoid blocking libuv threadpool workers in PolicyWatcher - #84

Merged
Robo (deepak1556) merged 6 commits into
mainfrom
robo/fix_threadpool_usage
Oct 28, 2026
Merged

Robo (deepak1556) merged 6 commits into
mainfrom
robo/fix_threadpool_usage

Conversation

@deepak1556

@deepak1556 Robo (deepak1556) commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

For microsoft/vscode#343189

Replace Napi::AsyncProgressQueueWorker with Napi::TypedThreadSafeFunction so watchers do not permanently occupy libuv worker threads for the lifetime of the process. On macOS, refresh policies directly on the FSEventStream serial dispatch queue without a worker thread; on Windows, run the WaitForMultipleObjects loop on a dedicated std::thread.

Replace Napi::AsyncProgressQueueWorker with Napi::TypedThreadSafeFunction so
watchers do not permanently occupy libuv worker threads for the lifetime of
the process. On macOS, refresh policies directly on the FSEventStream serial
dispatch queue without a worker thread; on Windows, run the
WaitForMultipleObjects loop on a dedicated std::thread.
@deepak1556 Robo (deepak1556) added this to the 1.145.0 milestone Oct 28, 2026
@deepak1556 Robo (deepak1556) self-assigned this Oct 28, 2026
@deepak1556
Robo (deepak1556) enabled auto-merge (squash) October 28, 2026 14:35
@deepak1556
Robo (deepak1556) merged commit 7142cc5 into main Oct 28, 2026
22 checks passed
@deepak1556
Robo (deepak1556) deleted the robo/fix_threadpool_usage branch October 28, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants