Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.21;
Скачать: CL | DM;

Вниз

Проблема при принудительном завершении потока   Найти похожие ветки 

 
Afonya   (2003-02-24 13:38) [0]

Добрый день, мастаки.
Столкнулся с такой ситуацией:
В своей основной програме, написаной в Делфи, подготавливаю файл исходных данных для расчёта.
Запускаю поток, который в свою очередь запускает консольное приложение. Последнее использует вышеуказаный файл исходных данных, который открывается только для чтения.
Все дело вот в чем: расчёт длится очень долго, к тому же склонен к зацикливанию, поэтому приходится его принудительно завершать с помощью TerminateThread. Но файл исходных данных остается быть открытым, и для дальнейшего редактирования моей основной програмой не пригоден.
Как снять с этого файла этот статус (статус, что он занят др. процессом) ?


 
Юрий Зотов ©   (2003-02-24 16:35) [1]

1. С помощью TerminateThread Вы завершаете СВОЙ поток, а не консольное приложение. Если хотите завершать и его тоже, используйте TerminateProcess.

2. Чтобы файл оставался доступен:
- откройте его сначала у себя, дав разрешение на совместный доступ по чтению.
- возможно, придется сделать его хэндл наследуемым - см. SetHandleInformation и параметр bInheritHandles в CreateProcess.



Страницы: 1 вся ветка

Текущий архив: 2003.04.21;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.016 c
11-67190
Kirill
2002-07-09 17:22
2003.04.21
Label


14-67441
[BAD]Angel
2003-04-04 21:25
2003.04.21
Как поменять IP-адресс?


4-67639
NikotiN
2003-02-24 14:27
2003.04.21
как перехватить сообщение на открытие файла


3-67122
Z_man7777
2003-04-02 11:53
2003.04.21
Есть поблемка связаная с выборкой данных из БД.


7-67592
gorchakov
2003-03-04 15:49
2003.04.21
вывод через принтерный порт на светодиоды