Listing 36. The vTaskDelete() API function prototype ............................................................. 85
Listing 37. The implementation of main() for Example 9 ......................................................... 86
Listing 38. The implementation of Task 1 for Example 9 ........................................................ 87
Listing 39. The implementation of Task 2 for Example 9 ........................................................ 87
Listing 40. The xQueueCreate() API function prototype ....................................................... 108
Listing 41. The xQueueSendToFront() API function prototype ............................................. 109
Listing 42. The xQueueSendToBack() API function prototype .............................................. 109
Listing 43. The xQueueReceive() API function prototype ..................................................... 112
Listing 44. The uxQueueMessagesWaiting() API function prototype .................................... 113
Listing 45. Implementation of the sending task used in Example 10. .................................... 115
Listing 46. Implementation of the receiver task for Example 10 ............................................ 116
Listing 47. The implementation of main() in Example 10 ...................................................... 117
Listing 48. The definition of the structure that is to be passed on a queue, plus the
declaration of two variables for use by the example ............................................ 120
Listing 49. The implementation of the sending task for Example 11 ..................................... 121
Listing 50. The definition of the receiving task for Example 11 ............................................. 122
Listing 51. The implementation of main() for Example 11 ..................................................... 123
Listing 52. Creating a queue that holds pointers ................................................................... 127
Listing 53. Using a queue to send a pointer to a buffer ......................................................... 127
Listing 54. Using a queue to receive a pointer to a buffer ..................................................... 127
Listing 55. The structure used to send events to the TCP/IP stack task in
FreeRTOS+TCP ................................................................................................. 128
Listing 56. Pseudo code showing how an IPStackEvent_t structure is used to send data
received from the network to the TCP/IP task ..................................................... 129
Listing 57. Pseudo code showing how an IPStackEvent_t structure is used to send the
handle of a socket that is accepting a connection to the TCP/IP task .................. 129
Listing 58. Pseudo code showing how an IPStackEvent_t structure is used to send a
network down event to the TCP/IP task .............................................................. 130
Listing 59. Pseudo code showing how an IPStackEvent_t structure is used to send a
network down to the TCP/IP task ........................................................................ 130
Listing 60. The xQueueCreateSet() API function prototype .................................................. 132
Listing 61. The xQueueAddToSet() API function prototype .................................................. 134
Listing 62. The xQueueSelectFromSet() API function prototype ........................................... 135
Listing 63. Implementation of main() for Example 12 ............................................................ 138
Listing 64. The sending tasks used in Example 12 ............................................................... 139
Listing 65. The receive task used in Example 12 .................................................................. 140
Listing 66. Using a queue set that contains queues and semaphores .................................. 142
Listing 67. A queue being created for use as a mailbox ....................................................... 144
Listing 68. The xQueueOverwrite() API function prototype ................................................... 144
Listing 69. Using the xQueueOverwrite() API function .......................................................... 145
Listing 70. The xQueuePeek() API function prototype .......................................................... 146
Listing 71. Using the xQueuePeek() API function ................................................................. 146
Listing 72. The software timer callback function prototype ................................................... 149
Listing 73. The xTimerCreate() API function prototype ......................................................... 158