Closed Bug 1537977 Opened 5 years ago Closed 5 years ago

Add a ManagedEndpoint<PFooSide> type to allow for more complex actor construction

Categories

(Core :: IPC, enhancement, P2)

enhancement

Tracking

()

RESOLVED FIXED
mozilla68
Tracking Status
firefox68 --- fixed

People

(Reporter: nika, Assigned: nika)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

This is specifically motivated by the desire to be able to allocate certain actors synchronously with their managers being connected. It is handled by passing around a type, like Endpoint<T>, which is then used to bind the actors on either side.

No messages may be sent before the actors are constructed, or routing errors may occur.

How is this different from Endpoint? It has been a while since I looked at them.

Flags: needinfo?(nika)

Endpoint is used to construct toplevel actors by establishing an underlying transport pipe which can be shared between the source & destination processes. These can then be linked to open a toplevel actor, and is how actors such as PBackground are created.

In contrast, ManagedEndpoint is intended to be used for constructing managed actors, which at the transport layer share the same pipe as the root actor, and route their messages to the correct destination based on the routing_id attached to the message.

Flags: needinfo?(nika) → needinfo?(continuation)
Flags: needinfo?(continuation)

(In reply to :Nika Layzell from comment #3)

In contrast, ManagedEndpoint is intended to be used for constructing managed actors, which at the transport layer share the same pipe as the root actor, and route their messages to the correct destination based on the routing_id attached to the message.

Thanks for the explanation! I've done a bit of work with Endpoints, but it was all for various GMP stuff, and I hadn't thought about how they were all top level actors.

Pushed by nlayzell@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8cde0ca01548
Add a ManagedEndpoint IPDL type for manually constructing actors, r=mccr8
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: