|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
最近在学freeRTOS,遇到一个关于任务堆栈分配的问题:
在创建一个task时需要预分配栈空间,这可以使用uxtaskgetstackhighwatermark()这个函数,我看到http://www.freertos.org/uxTaskGetStackHighWaterMark.html这上面是这么用的:
-
- void vTask1( void * pvParameters )
- {
- unsigned portBASE_TYPE uxHighWaterMark;
- /* Inspect our own high water mark on entering the task. */
- uxHighWaterMark = uxTaskGetStackHighWaterMark( NULL );
- for( ;; )
- {
- /* Call any function. */
- vTaskDelay( 1000 );
- /* Calling the function will have used some stack space, we would
- therefore now expect uxTaskGetStackHighWaterMark() to return a
- value lower than when it was called on entering the task. */
- uxHighWaterMark = uxTaskGetStackHighWaterMark( NULL );
- }
- }
-
复制代码
请问一下前后两个uxtaskgetstackhighwatermark()分别测出的是这个任务的什么使用空间呢? |
|