What is the defacto standard for exchanging variables between programs in different languages?

I have never had formal training in this area, so I wonder what they teach at school (if they do). Let's say you have two programs written in two different languages: C ++ and Python, or some other combination, and you want to use a constantly updated variable on the same machine, what would you use and why? Information should not be protected, but should be isochronous, should be reliable.

For instance. Program A will receive the value from the hardware device and update the variable X every 0.1 ms. I would like to be able to access this X from Program B as often as possible and get the most recent values. Programs A and B are written and compiled in two different (reliable) languages. How to access X from program B? Suppose I have the source code from A and B, and I don’t want to completely rewrite or port any of them.

The method I've seen so far includes:

  • File Buffer - read and write to a single file (for example, C: \ temp.txt).
  • Create a wrapper - from A to B or from B to A.
  • Buffer memory — Assign a specific memory address (mutex?).
  • UDP packets through sockets - have not tried it yet, but it looks good. Firewall?

, , , , .

+4
5

. , .

, 10 . , , . ( ) , - ( ), , , . .

, IPC (Inter Process Communication). - ( XML, CORBA), , , . , , 0,1 , - , , , , , , , - .

(, , , ). ( ) . Intel / 32- , , .

+1

, XML (, rabbitMQ)

+2

, , , , , , .

marshalling, java #.

xml , .

+2

CORBA. , , , , , , , , ( ?) . , ++ , .

.

, , .

.

0

C-.

0

All Articles