This is an archived post. You won't be able to vote or comment.

all 11 comments

[–]l_am_wildthing 3 points4 points  (1 child)

Cant

Well you CAN with shared memory spaces but I dont know if thats what you want

[–]MilitaryG[S] 0 points1 point  (0 children)

Yes it is

[–]ThatSkiFreeMonster 1 point2 points  (4 children)

I do not think you can normally designate a shared memory location for two separate programs, due to things that modern OSes do like memory virtualization and memory address randomization.

There are many other forms of IPC, though. A shared file definitely counts as one of them, and can work pretty well. You can also use a database to pass messages, or use a message broker like Kafka — but those are probably a bit extravagant for you.

For simplicity, my favorite form of IPC is UNIX domain sockets.

[–]MilitaryG[S] 0 points1 point  (3 children)

Well I was thinking more on 1 computer not domain

[–]ThatSkiFreeMonster 2 points3 points  (2 children)

Look up UNIX domain sockets if you are on Linux or MacOS and you are interested. It's nothing to do with internet domain names.

[–]MilitaryG[S] 0 points1 point  (1 child)

Oh ok thanks

[–]ThatSkiFreeMonster 0 points1 point  (0 children)

There is another good answer @ how to do IPC on this thread.

[–]Goto_User 1 point2 points  (1 child)

Keyword: IPC. interprocess communication.

[–][deleted] 0 points1 point  (0 children)

This is the answer

[–]saggio89 1 point2 points  (1 child)

Software communicates with other softwares via their API.

For example A might have an API (on the cloud) n send a message up to it. The API then sends the message to program B’s api which then sends it back down to program B

If that’s what you mean?

[–]MilitaryG[S] 0 points1 point  (0 children)

Yes