]> git.sur5r.net Git - freertos/commitdiff
Improve example code for xTaskCreate().
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Mon, 22 Sep 2008 13:43:07 +0000 (13:43 +0000)
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Mon, 22 Sep 2008 13:43:07 +0000 (13:43 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@478 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

Source/include/task.h

index 60193cfb73bef13a5557183a13c22c3249b4a26d..54e7e3c3e5369cde3a203553790e68d5ab53161f 100644 (file)
@@ -215,10 +215,13 @@ typedef struct xTIME_OUT
  // Function that creates a task.\r
  void vOtherFunction( void )\r
  {\r
- unsigned char ucParameterToPass;\r
static unsigned char ucParameterToPass;\r
  xTaskHandle xHandle;\r
                \r
-     // Create the task, storing the handle.\r
+     // Create the task, storing the handle.  Note that the passed parameter ucParameterToPass\r
+     // must exist for the lifetime of the task, so in this case is declared static.  If it was just an\r
+     // an automatic stack variable it might no longer exist, or at least have been corrupted, by the time\r
+     // the new time attempts to access it.\r
      xTaskCreate( vTaskCode, "NAME", STACK_SIZE, &ucParameterToPass, tskIDLE_PRIORITY, &xHandle );\r
                \r
      // Use the handle to delete the task.\r