I needed to use Named pipe to communicate with my Erlang Vitual Machine, which worked as a daemon.
I believe that they are slowly being replaced by "socketpairs", because it offers bidirectional communication as opposed to pipes, which is only unidirectional unless we create two different pipes.
Shared memory is still used in large server applications, because it will be the fastest of all other mechanisms in a multiprocessor system, but as a rule, it is difficult to implement it correctly.
And the use of sockets becomes necessary only when communication over the network is required.
Again comes down to one thing: "Use the mechanism that is best suited for the application"
Arunmu
source share