/**
*
* @File : exo_01c.cxx
*
* @Authors : M. Laporte
*
* @Date : 06/11/2001
*
* @Version : V1.0
*
* @Synopsis : Consommateur de messages dans une file de message
*
**/
#include <iostream>
#include <exception>
#include <string>
#include <unistd.h> // getuid(), getpid()
#include "CException.h"
#include "nsSysteme.h"
#include "CstCodErr.h"
#include "nsMsg.h"
using namespace nsUtil; // CException
using namespace nsSysteme;
using namespace nsMsg;
int std::ppal (int argc, char * argv []) throw (exception)
{
if (1 != argc)
throw CException (string ("Usage : ") + argv [0], CstExcArg);
int MsqId = Msgget (::getuid ());
SMsg Msg = {1L, ::getpid ()};
SRep Reponse;
for (;;)
{
Msgsnd (MsqId, & Msg, sizeof (int));
Msgrcv (MsqId, & Reponse, CstMaxTaille, ::getpid ());
cout << "Message lu : " << Reponse.m_Message << endl;
}
return 0;
} // ppal()