Официальный форум СВД Встраиваемые Системы
25 Апрель, 2024, 17:42:19 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Досрочное завершение потока  (Прочитано 1892 раз)
Дмитрий
Пользователь

Сообщений: 59


« : 24 Июнь, 2013, 13:09:33 »

Здравствуйте!

Я создаю поток в QNX 4 функцией
Код:
stack1 (char*) malloc(STACK_SIZE);
_beginthread(tx_tread,stack1,STACK_SIZE,args);
Могу ли я досрочно завершить поток, не выходя из него?
Если да, то какой функцией?
« Последнее редактирование: 25 Июнь, 2013, 07:17:21 от Дмитрий » Записан
Василий Дмитриев
Ветеран

Сообщений: 364



« Ответ #1 : 25 Июнь, 2013, 09:25:43 »

_endthread()
А вообще я еще не видел доки более дружественной нежели чем в qnx4, а ссылка на _endthread прямо в топике про _beginthread. Присутствует и в экзампле. Короче, если что-то не получается, читайте инструкцию. Единственное чем бы я озаботился дополнительно, это обработкой сигнала SIGCHLD в родительском процессе.
Записан

Санкции! Запрещаю Бараку Обаме и членам конгресса США читать мои посты!
Дмитрий
Пользователь

Сообщений: 59


« Ответ #2 : 26 Июнь, 2013, 08:19:54 »

извините, но _endthread не подходит, мне нужно завершить поток  ВНЕ его.
т.е. функция _endtread вызывается из потока, а мне нужно закрыть его, зная имя потока.
В Linux есть аналогичная функция pthread_cancel(pthread);
Как сделать в QNX?
Записан
Антон Падалко
Пользователь

Сообщений: 41


« Ответ #3 : 26 Июнь, 2013, 10:30:00 »

функция _beginthread возвращает thread_id
соответственно для убийства потока используем:
kill(thread_id, SIGKILL);
Записан
Дмитрий
Пользователь

Сообщений: 59


« Ответ #4 : 26 Июнь, 2013, 15:40:04 »

Большое спасибо! Я почему-то не обратил внимание,  что функция __beginthread может возвращать pid потока
« Последнее редактирование: 26 Июнь, 2013, 15:42:48 от Дмитрий » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2024 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 09 Август, 2021, 18:33:53