-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Significant streamlining. Removed the two Port sub-classes, we now ju…
…st have the Port class, which takes an is_server bool argument in it's constructor. All ports create their own in-fifo, that way a server-client pair between them create both required fifos. The is_server flag determines which order each Port attempts to open it's in and out fifos. Previously when opening it's out fifo, we polled until timeout trying to open the fifo for writing, ignoring ENXIO in case the corresponding reader hadn't yet opened the file for reading. Now we explicitly catch (and ignore) ENOENT, in case the corresponding reader hasn't yet created the fifo file. This means we don't need to first create the server ports (so they can create all the required fifo files), then launch the child process, then open all the ports. Now we can launch the child process *first* and then create the ports in both parent and child process. As long as the ports in both server and client are all created within timeout_seconds of one-another, they will all link up. More comments to follow on significantly revised shutdown & destructors.
- Loading branch information
Sebastien Sikora
committed
Dec 5, 2021
1 parent
b735b28
commit a35f25e
Showing
9 changed files
with
136 additions
and
247 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.