Метод kill
void kill(Запрашивает остановку изолированного потока.
Изолированному потоку запрашивается завершить свою работу. Аргумент priority указывает, когда это должно произойти.
Значение аргумента priority, если указано, должно быть равно IMMEDIATE или BEFORE_NEXT_EVENT (по умолчанию). Остановка выполняется в разное время в зависимости от приоритета:
-
IMMEDIATE: Изолированный поток останавливается как можно скорее. Управляющие сообщения обрабатываются в порядке очереди, поэтому все ранее отправленные управляющие события из этого потока будут обработаны. Остановка должна произойти не позже, чем если бы она была отправлена сBEFORE_NEXT_EVENT. Она может произойти раньше, если система имеет возможность выполнить чистую остановку в более раннее время, даже во время выполнения другого события. -
BEFORE_NEXT_EVENT: Остановка запланирована на следующий момент возврата управления к циклу событий принимающего изолированного потока после завершения текущего события и всех уже запланированных управляющих событий.
Если terminateCapability равно null, или это не возможность завершения изолированного потока, идентифицируемого по controlPort, запрос на остановку игнорируется принимающим изолированным потоком.
Исходный код
external void kill({int priority: BEFORE_NEXT_EVENT});
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-isolate/Isolate/kill.html