Циркон тема Тема

Определения

нить - работоспособный / компьютерный объект

описание

Thread контекст выполнения объект является структурным представлением общего процессорного времени. Особый поток , связанный с объектом существует в объекте процесса , предусмотрен ввод / вывод и память и вычисление , необходимое для обработки других объектов.

выживание

Автор по телефону [ zx_thread_create()] создана, но только после вызова [ zx_thread_start()] или [ zx_process_start()когда] начал. Эти две системы вызывает процедуру , чтобы выполнять начальную точку входа в качестве параметра.

Прошёл к zx_process_start()теме] должен начать нить в процессе исполнения.

Автор прекращает исполнение:

  • Называя [ zx_thread_exit()]
  • Называя [ zx_vmar_unmap_handle_close_thread_exit()]
  • Называя [ zx_futex_wake_handle_close_thread_exit()]
  • Когда родительский процесс завершается
  • По параметру ручки с вызывающим потоком [ zx_task_kill()]
  • После обработчика исключений или обработчик не реагирует на решение о прекращении потока.

Из функции возвращают точки входа, поток не прекращает выполнение. И, наконец, операция должна быть вызовом функции точки входа [ zx_thread_exit()] или вышеупомянутыми _exit()вариантами.

Закройте ручку нить не обрывается последнюю нить. Для того, чтобы заставить убить дескриптор потока не доступен, используйте [ zx_object_get_child()] , чтобы получить дескриптор потока. Настоятельно рекомендуется не использовать этот метод. Может убить выполнение потока в процессе коррумпированности государства.

Фуксия родные потоки всегда разделены . Другими словами, не нужно * присоединиться () * операции для завершения очистки терминатор. Однако, по ряду времени выполнения ядра runtimes, такие как C11 или POSIX нитей может потребоваться для подключения.

Системные вызовы

  • [ zx_thread_create()] - создать новый поток в процессе
  • [ zx_thread_exit()] - выход из текущего потока
  • [ zx_thread_read_state()] - читать статус регистрации с резьбой
  • [ zx_thread_start()] - новый поток начинает выполнение
  • [ zx_thread_write_state()] - зарегистрировано изменение состояния нити

  • [ zx_task_bind_exception_port()] - порт исключения прилагается к задаче
  • [ zx_task_kill()] - задача остановить работу

рекомендация

отblog.csdn.net/sinat_20184565/article/details/93907162