Ожидает завершения указанного потока. |
Краткое описание
- int waitThread(int threadId);
Параметры
Параметр | Значение |
threadId | Идентификационный номер ожидаемого потока. |
Возвращаемое значение
В случае успешного исполнения 0, в случае возникновения ошибок -1. |
Ошибки
Отсутствующие/неверные аргументы, например, указанный поток не существует. |
Описание
Ожидает поток с идентификационным номером threadId. ПРИМЕЧАНИЕ Существует возможность ожидания только сценариев, запуск которых был инициирован в собственном сценарии, ожидание собственного потока невозможно: waitThread(getThreadId()). |
ПРИМЕР |
void myFunction() { DebugTN(«begin of thread»); int a; for (a = 0; a < 10; a++) { DebugTN(getThreadId(), a); delay(1); } DebugTN(«end of thread»); } /*A) При «waitThread()» -> «main()» находится в ожидании после «startThread()», так как поток не завершен*/ main() { DebugTN(«begin of main»); int id = startThread(«myFunction»); waitThread(id); DebugTN(«end of main»); } /* Вывод в средство просмотра журналов:WCCOAui1:2010.11.24 16:28:18.128[«begin of main»] WCCOAui1:2010.11.24 16:28:18.191[«begin of thread»] WCCOAui1:2010.11.24 16:28:18.191[1][0] WCCOAui1:2010.11.24 16:28:19.191[1][1] WCCOAui1:2010.11.24 16:28:20.191[1][2] WCCOAui1:2010.11.24 16:28:21.191[1][3] WCCOAui1:2010.11.24 16:28:22.191[1][4] WCCOAui1:2010.11.24 16:28:23.191[1][5] WCCOAui1:2010.11.24 16:28:24.191[1][6] WCCOAui1:2010.11.24 16:28:25.191[1][7] WCCOAui1:2010.11.24 16:28:26.191[1][8] WCCOAui1:2010.11.24 16:28:27.191[1][9] WCCOAui1:2010.11.24 16:28:28.191[«end of thread»] WCCOAui1:2010.11.24 16:28:28.191[«end of main»]*/ /*B) Без «waitThread()» -> «main()» завершается непосредственно после вызова «startThread()»*/ main() { DebugTN(«begin of main»); int id = startThread(«myFunction»); // waitThread(id); DebugTN(«end of main»); } /* Вывод в средство просмотра журналов:WCCOAui1:2010.11.24 16:29:54.881[«begin of main»] WCCOAui1:2010.11.24 16:29:54.959[«begin of thread»] WCCOAui1:2010.11.24 16:29:54.959[«end of main»] WCCOAui1:2010.11.24 16:29:54.959[1][0] WCCOAui1:2010.11.24 16:29:55.959[1][1] WCCOAui1:2010.11.24 16:29:56.959[1][2] WCCOAui1:2010.11.24 16:29:57.959[1][3] WCCOAui1:2010.11.24 16:29:58.959[1][4] WCCOAui1:2010.11.24 16:29:59.959[1][5] WCCOAui1:2010.11.24 16:30:00.959[1][6] WCCOAui1:2010.11.24 16:30:01.959[1][7] WCCOAui1:2010.11.24 16:30:02.959[1][8] WCCOAui1:2010.11.24 16:30:03.959[1][9] WCCOAui1:2010.11.24 16:30:04.959[«end of thread»]*/ |
Используется для объекта
Потоки |
Доступность
CTRL |
См. также