Open Bug 1620387 Opened 6 years ago Updated 1 year ago

Convert the thread 'mtransport' to use the background thread pool

Categories

(Core :: WebRTC: Networking, task, P3)

task

Tracking

()

People

(Reporter: KrisWright, Unassigned)

References

(Blocks 1 open bug)

Details

The thread mtransport [1] uses the NS_NewNamedThread method, so it might be possible to move it to the background thread pool.

In an effort to reduce the number of ad-hoc threads in the browser, we want to convert instances of NS_NewNamedThread to use the background thread pool [2] wherever possible. If your thread may block, you can also include the NS_DISPATCH_EVENT_MAY_BLOCK flag.

[1] https://searchfox.org/mozilla-central/rev/c79c0d65a183d9d38676855f455a5c6a7f7dadd3/media/mtransport/nr_socket_prsock.cpp#263
[2] https://searchfox.org/mozilla-central/rev/91f6c02fcf4c16f78fdc4417f61f192688294066/xpcom/threads/nsThreadUtils.h#1730-1757

Marking this a P2 after discussion w/ Byron. The main concern here is whether using NS_DISPATCH_EVENT_MAY_BLOCK will work well for us and provided the serial execution we need. This would be a nice simplification opportunity if it works in this case.

Priority: -- → P2

(In reply to Michael Froman [:mjf] from comment #1)

Marking this a P2 after discussion w/ Byron. The main concern here is whether using NS_DISPATCH_EVENT_MAY_BLOCK will work well for us and provided the serial execution we need. This would be a nice simplification opportunity if it works in this case.

For serial execution, you can get a TaskQueue to dispatch to the thread pool using NS_CreateBackgroundTaskQueue.

Severity: normal → S3
Priority: P2 → P3
You need to log in before you can comment on or make changes to this bug.