Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Вниз

Объекты в потоках.   Найти похожие ветки 

 
Риг   (2009-08-23 02:22) [0]

Добрый день, только начал осваивать потоки, и столкнулся со следующей проблемой:

Внутри потока создается объект для работы с Rar архивами, если у нас работает один поток - то все проходит нормально, но
если мы запускаем два или более потока, то происходит исключение "TAccessViolation at address XXXXXX in module "unrar3.dll""


//.....код.....//
UnZip:=TUnRar.Create(UnZip);
//....задаем параметры...//
if DirectoryExists(dir) then
FileExtract := UnZip.Extract()  //исключение происходит здесь
else
begin
 CreateDir(dir);
 FileExtract := UnZip.Extract(); // и здесь


Как можно поступить в данном случае? Желательно без остановки работы какого-либо потока.
Заранее благодарю за помощь.


 
Риг   (2009-08-23 02:28) [1]

Использую компонент ZipTV
UnZip:TUnRar;


 
Риг   (2009-08-23 02:32) [2]

Вопрос отпал. В откомпилированной программе все работает. Извиняюсь за беспокойство


 
Kolan ©   (2009-08-23 10:04) [3]

Возможно вам просто повезло. Проблема может быть в том, что компонент не потокобезопасный.


 
Риг   (2009-08-23 14:09) [4]

да, скорее всего. Работал через раз и глючил жутко. Организовал использование его, по очереди - теперь все нормально.


 
Kolan ©   (2009-08-23 17:17) [5]

Как организовали исполнение по очереди?



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

Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.046 c
15-1250975984
Германн
2009-08-23 01:19
2009.10.25
Мини-опрос. Кому сколько ехать из дома до той конторы,


2-1251375733
Кирей
2009-08-27 16:22
2009.10.25
редактор отчетов


15-1250985135
DillerXX
2009-08-23 03:52
2009.10.25
Не пойму с поведением SQL


3-1228725725
amadey_motzart
2008-12-08 11:42
2009.10.25
ADOQuery


2-1251362876
Polkin
2009-08-27 12:47
2009.10.25
Наведение мыши в потомке TLabel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский