Voor ons project (bowling score systeem) moeten wij gaan communiceren tussen verschillende applicatie's.
Nu kan dit IPC (Interprocess Communication) op verschillende manieren:
-shared memory
-pipes
-messages
Ik denk dat je met messages het meest flexibel bent.
Dus wij zouden dan in ons geval gebruiken moeten gaan maken van System V Message Queue.
Maar hoe ik deze implementatie in gedachte heb is als volgt:
Applicatie A stuurt een bericht naar de message queue.
Applicatie B heeft een aparte thread gestart bij het starten van applicatie B die continu aan het kijken is of er een nieuw bericht in de message queue staat.
Als er dan een nieuw bericht is, stopt die thread tijdelijk, stuurt het vervolgens op een bepaalde manier (?) door naar de main thread van applicatie B en die verwerkt het.
Als je dan bidirectionele verbinding wil hebben dan zou je dus ook bij applicatie A zo'n aparte thread hebben moeten draaien.
Heel dit IPC gebeuren is voor mij nieuw en ik weet dus niet of dit de goede manier is.
Is deze methode verkeerd en er is een veel betere methode?
Nu kan dit IPC (Interprocess Communication) op verschillende manieren:
-shared memory
-pipes
-messages
Ik denk dat je met messages het meest flexibel bent.
Dus wij zouden dan in ons geval gebruiken moeten gaan maken van System V Message Queue.
Maar hoe ik deze implementatie in gedachte heb is als volgt:
Applicatie A stuurt een bericht naar de message queue.
Applicatie B heeft een aparte thread gestart bij het starten van applicatie B die continu aan het kijken is of er een nieuw bericht in de message queue staat.
Als er dan een nieuw bericht is, stopt die thread tijdelijk, stuurt het vervolgens op een bepaalde manier (?) door naar de main thread van applicatie B en die verwerkt het.
Als je dan bidirectionele verbinding wil hebben dan zou je dus ook bij applicatie A zo'n aparte thread hebben moeten draaien.
Heel dit IPC gebeuren is voor mij nieuw en ik weet dus niet of dit de goede manier is.
Is deze methode verkeerd en er is een veel betere methode?