|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.11.2019, 22:18 | #1 |
Пользователь
Регистрация: 01.09.2013
Сообщений: 83
|
Вызов одной DLL из нескольких потоков
Привет всем. Не спрашивайте зачем
При создании одного потока - все работает прекрасно и без ошибок. Если потоков 2 и больше - либо вылетает, либо сыпется различного рода ошибками, типа EAccessViolation или EInvalidPointer. Буду очень благодарен, если направите мысли в нужное русло! Всем спасибо! Код DLL: Код:
Код:
Код:
|
16.11.2019, 23:35 | #2 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
IHTTPResponse это интерфейс. Интерфейсы это не объекты, а указатели которые ссылаются на общий объект. А общий объект должен быть защищен от параллельного доступа. К примеру мьютексом, в вашем случае лучше критической секцией.
А ещё лучше не использовать А заменить на indy.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
16.11.2019, 23:39 | #3 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
17.11.2019, 02:17 | #4 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,869
|
del...
Последний раз редактировалось northener; 17.11.2019 в 02:20. |
17.11.2019, 02:20 | #5 |
ПШП
Участник клуба
Регистрация: 15.07.2013
Сообщений: 1,869
|
del...
|
17.11.2019, 10:09 | #6 | |
Пользователь
Регистрация: 01.09.2013
Сообщений: 83
|
Цитата:
Код:
|
|
17.11.2019, 10:20 | #7 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Лучше попробуйте ещё сделать синхронным
hndDLLHandle := loadLibrary('gear.dll') getProcAddress freeLibrary(hndDLLHandle);
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Запуск нескольких потоков | bilibian | Общие вопросы Delphi | 41 | 25.02.2014 16:20 |
Создание нескольких потоков | iKarma | Общие вопросы Delphi | 9 | 20.10.2011 18:11 |
Запуск нескольких потоков | bulldog5293 | Общие вопросы Delphi | 3 | 11.11.2010 18:24 |
Работа с файлом из нескольких потоков | boris-blade | Общие вопросы .NET | 2 | 02.04.2010 17:21 |