2012-12-21 33 views
1

有沒有辦法使用優先級隊列來實現C中的IPC? 我需要從一個進程發送一個結構到另一個進程,但我想爲每個結構分配一個優先級,以便其他進程首先接收更高優先級的結構。 有點像FIFO,但有優先權。IPC在Unix中使用優先級隊列?

謝謝。

回答

1

POSIX Message Queues和SysV消息隊列都可以處理優先級。讀取時,POSIX隊列將始終返回最高優先級的最舊消息。 SysV隊列返回給出的任何(指定)優先級的消息。

+0

但據我所知,POSIX消息隊列只能發送字符串。有沒有辦法發送結構? – Abdul

+0

它們不限於字符串,實際上字符串有時可能會有問題,因爲大小需要限制在隊列大小等等。從本質上講,它們將傳遞它們給出的任何字節,包括二進制數據的結構。 – Duck

+0

噢,好的。謝謝。我現在要試試這個。 – Abdul