equal
deleted
inserted
replaced
26 communication with device driver threads. </p> |
26 communication with device driver threads. </p> |
27 <p>Both <codeph>TMessageBase</codeph> and <codeph>TThreadMessage</codeph> are |
27 <p>Both <codeph>TMessageBase</codeph> and <codeph>TThreadMessage</codeph> are |
28 defined in <filepath>...\kernel\kernel.h</filepath>, which is exported to <filepath>epoc32\include\kernel</filepath>. </p> |
28 defined in <filepath>...\kernel\kernel.h</filepath>, which is exported to <filepath>epoc32\include\kernel</filepath>. </p> |
29 <fig id="GUID-230AECE3-5006-543A-9F4F-088C62E14E6D"> |
29 <fig id="GUID-230AECE3-5006-543A-9F4F-088C62E14E6D"> |
30 <title>Message threads and queues</title> |
30 <title>Message threads and queues</title> |
31 <image href="GUID-D8A3C18B-A107-5557-B882-CD6CDD0F0F1D_d0e303284_href.png" placement="inline"/> |
31 <image href="GUID-D8A3C18B-A107-5557-B882-CD6CDD0F0F1D_d0e309276_href.png" placement="inline"/> |
32 </fig> |
32 </fig> |
33 <p> <xref href="GUID-CAAD5B87-CEE7-30E8-BA6A-08F9407C4C20.dita"><apiname>SDblQueLink</apiname></xref> is simply an object that allows a message |
33 <p> <xref href="GUID-CAAD5B87-CEE7-30E8-BA6A-08F9407C4C20.dita"><apiname>SDblQueLink</apiname></xref> is simply an object that allows a message |
34 to be linked to another in the form of a doubly-linked list. </p> |
34 to be linked to another in the form of a doubly-linked list. </p> |
35 <p>The message queue is represented by a <xref href="GUID-382DD935-E9D7-3E00-88B2-B28A89CAD4FB.dita"><apiname>TMessageQue</apiname></xref> object, |
35 <p>The message queue is represented by a <xref href="GUID-382DD935-E9D7-3E00-88B2-B28A89CAD4FB.dita"><apiname>TMessageQue</apiname></xref> object, |
36 which consists of a DFC plus a doubly-linked list of received messages. The |
36 which consists of a DFC plus a doubly-linked list of received messages. The |
41 defined in <filepath>...\nkern\nklib.h</filepath>, which is exported to <filepath>epoc32\include\nkern</filepath>. </p> |
41 defined in <filepath>...\nkern\nklib.h</filepath>, which is exported to <filepath>epoc32\include\nkern</filepath>. </p> |
42 <p>The following shows, in simple terms, the relationship between messages |
42 <p>The following shows, in simple terms, the relationship between messages |
43 and the message queues: </p> |
43 and the message queues: </p> |
44 <fig id="GUID-2D1F4468-5208-51F1-9E48-B5E9DC44B6B2"> |
44 <fig id="GUID-2D1F4468-5208-51F1-9E48-B5E9DC44B6B2"> |
45 <title>Relationship between messages and message queues</title> |
45 <title>Relationship between messages and message queues</title> |
46 <image href="GUID-DA7751A1-4EC5-5FBA-A42B-E254133A1D82_d0e303330_href.png" placement="inline"/> |
46 <image href="GUID-DA7751A1-4EC5-5FBA-A42B-E254133A1D82_d0e309322_href.png" placement="inline"/> |
47 </fig> |
47 </fig> |
48 <p>When a message is sent to the queue, either: </p> |
48 <p>When a message is sent to the queue, either: </p> |
49 <ul> |
49 <ul> |
50 <li id="GUID-08445948-588F-512B-BA6C-D641F0DDF572"><p>the message is accepted |
50 <li id="GUID-08445948-588F-512B-BA6C-D641F0DDF572"><p>the message is accepted |
51 immediately, and the receiving thread’s DFC runs. This will happen if the |
51 immediately, and the receiving thread’s DFC runs. This will happen if the |