2017-03-21 3 views
1

J'écris un simple message en passant un exercice et j'ai envoyé un message d'un processus à l'autre. C'est le jeu de cuirassé.Problèmes avec la file d'attente de transmission de messages Linux

Toutefois, d'autres processus continuent d'attendre le message.

code est http://pastebin.com/Lc5xxXdu

entrée de l'échantillon:

enter image description here

bord d'abord 4x4 est initalized pour les deux joueurs (par exemple):

oooo 
---- 
oooo 
---- 

ciblent ensuite les coordonnées sont ENTERE (par exemple 0 0). Ce processus envoie un message à l'autre (en utilisant message_t, long pid est à la place de mtype dans le code du noyau).

Mais cela ne fonctionne pas pour une raison inconnue. Traductions rapides:

Cekam poruku %pid --> Waiting for message 
Saljem poruku %pid --> Sending message with following pid (mtype for kernel) set 
Ispali na polje --> Nice query where to shoot next 

Répondre

0

Solution obtenue. J'ai accidentellement eu un pointeur au pointeur au lieu d'un seul niveau de pointeurs. Il a eu à délivrer que j'avais.