gecko-dev/xpcom
Nathan Froyd 7b36ee37f3 Bug 1584568 - add an API to construct background task queues; r=KrisWright
For some clients, just dispatching tasks to some anonymous background
thread is fine.  But for other clients, they need to guarantee that
dispatched events are executed in dispatch order, or they would like to
have some guarantee that functions executing in the background are
executing on a particular event target, or both.  For such uses cases,
we need something a little more sophisticated than simply handing out
the `BackgroundEventTarget` `nsThreadManager` is using.

Fortunately, we have an abstraction that provides these sorts of
guarantees already in `mozilla::TaskQueue`.  Since `mozilla::TaskQueue`
requires a bit of special care during shutdown, we're not going to hand
out new `TaskQueue` objects directly, but will instead hand out
`nsISerialEventTarget` wrappers of the newly-created `TaskQueues`.
`nsThreadManager` can then take care of shutting down all of the
`TaskQueue` objects itself, rather than requiring clients to handle
shutdown themselves.

Differential Revision: https://phabricator.services.mozilla.com/D47454

--HG--
extra : moz-landing-system : lando
2019-12-12 15:09:19 +00:00
..
base Bug 1602646 - Remove vestigial references to cooperative scheduling r=froydnj 2019-12-12 00:56:53 +00:00
build Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
components Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
doc
ds Backed out changeset e65c1bcb013f (bug 1601475) for causing build bustage. On a CLOSED TREE 2019-12-09 12:51:07 +02:00
glue Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
idl-parser Bug 1600719. Add some sanity-checking for redundant can_run_script annotations on XPIDL attributes. r=froydnj 2019-12-02 19:52:11 +00:00
io Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan 2019-12-06 09:17:57 +00:00
libxpt/xptcall
reflect Bug 1586358 - Replace existing instances of GENERATED_FILES with references to the GeneratedFile template r=firefox-build-system-reviewers,mshal 2019-10-07 21:15:19 +00:00
rust Bug 1587468 - Update uuid to 0.8.1. r=webdriver-reviewers,whimboo,emilio 2019-12-06 00:47:50 +00:00
string Bug 1602452 - Make member functions of nsTStringRepr defined in header constexpr. r=froydnj 2019-12-10 08:40:48 +00:00
system Bug 1470591 - Part 1: Add a new process type for ForkServer. r=gsvelto 2019-12-05 00:03:29 +00:00
tests Bug 1561715 - Part 1: Remove unused functionality in SchedulerGroup. r=smaug 2019-12-11 14:48:41 +00:00
threads Bug 1584568 - add an API to construct background task queues; r=KrisWright 2019-12-12 15:09:19 +00:00
windbgdlg
xpidl
moz.build
xpcom-config.h.in Bug 1570982 - remove `CPP_THROW_NEW`; r=glandium 2019-08-14 01:32:41 +00:00
xpcom-private.h.in