Perl очереди сообщений

#! / USR / бен / Perl 
использовать IPC :: SysV дш (IPC_PRIVATE IPC_CREAT S_IRWXU); 
использовать IPC :: Msg; 
мой $ очереди = IPC :: msg-> новый (IPC_PRIVATE, S_IRWXU | IPC_CREAT); 
$ MsgType = 6; 
$ msgdata = "привет мир!"; 
мой $ PID = вилка (); 
если (не определен $ PID) { 
	печати «ресурсы не доступны . \ п»; 
} ELSIF ($ PID == 0) { 
	печать "Я ребенок \ п."; 
	сон 3; 
	печать «Я ребенок 1,1 \ п.»; 
	$ queue-> SND ($ MsgType, $ msgdata); 
	печать «Я ребенок 1,2 \ п.»; 
	сон 2; 
	печать «Я ребенок 2. \ п»; 
	Выход (0); 
} Еще { 
	печать «Я являюсь родителем 1. \ п»; 
	$ Тип = $ queue-> RCV ($ ЬиЕ, 256);
	печать "тип => $ типа \ п."; 
	$ DS = $ queue-> стат; 
	печать $ БУФ; 
	печать $ ца; 
	печать "конец PID => $ PID \ п."; 
	$ Рез = $ queue-> удалить; 
	печать "REMOVE Рез => $ разреш \ п."; 
	если {($ определены разрешение!) 
		распечатать "привет => $! \ п."; 
	} 
	Waitpid ($ PID, 0); 
}

 Процесс по уходу за детьми, чтобы отправить сообщение, родительский процесс для получения сообщений. Какие queue-> RCV заблокирован.

рекомендация

отwww.cnblogs.com/longchang/p/12015769.html