(toppers-users 3332) JSP1.4.3 mailboxについて
Nozomu Kon
kon-n @ vecc.co.jp
2010年 12月 21日 (火) 10:25:20 JST
ベクトル(株)今と申します。
現在、JSP1.4.3を評価中なのですが、
mailboxについて疑問がありましたので、
投稿させていただきます。
タスクAが送信側、タスクBが受信側とします。
タスクAは受信側の状態によらず、外部要求がある限り
snd_mbxを続けます。
タスクBは空き時間にrcv_mbxにて受信、メッセージ処理を行います。
メッセージが溜まる場合、snd_mbxでは
mbxcb->last->next = pk_msg; (mailbox.c line 163)
にてメッセージを繋げていますが、
rcv_mbxでは溜まりメッセージを
*ppk_msg = mbxcb->head; (mailbox.c line 199)
mbxcb->head = (*ppk_msg)->next;
にて取り出しています。
片や「last->next」で繋げ、片や「head->next」で取り出していますが、
どちらかに統一する必要はないのでしょうか。
どういった条件で発生するのか調査中なのですが、
タスクBがメッセージEND(NULL)を検出できなくなり、
タスクBの無限ループに陥っています。
思い違いでしたら、ご容赦ください。
--
今 望武