Многопоточность в Delphi

Статус
В этой теме нельзя размещать новые ответы.

NoName013

Постоялец
Регистрация
10 Ноя 2013
Сообщения
80
Реакции
23
Не подскажите какой либо литературы, где хорошо описана реализация многопоточности, а именно взаимодействие между потоками.
Почему-то постоянно пишут только о реализации критических секций, как будто других способов не существует. Теоретической информации о том, как реализованы мьютексы, семафоры, системные события, IOCP и как с ними работать средствами делфи сложно найти.
Информацию желательно (но не обязательно) на русском языке.
Заранее спасибо.

ps: интересует именно теоретический материал, а не примеры с кодом.
 

gothmog

Постоялец
Регистрация
18 Июн 2011
Сообщения
70
Реакции
29
Почему-то постоянно пишут только о реализации критических секций, как будто других способов не существует.
Потому что надо читать литературу не по дельфи, где люди ничего кроме VCL не могут освоить, а по программированию под Windows в целом, книги по WinApi. Советую классику, Джеффри Рихтера "Windows via C/C++". Там много теории, и примеры кода (на С, но на дельфи переделать несложно, винапи то одинаковое везде).
 

gothmog

Постоялец
Регистрация
18 Июн 2011
Сообщения
70
Реакции
29
Если хотите профессионально программировать под Windows, вам придется изучить Си, хотя бы на уровне чтения исходников. Конечно, WinApi везде одинаковый, его можно вызывать хоть с дельфи, хоть с чего угодно. Но изначально дельфи создавали для другой цели, в основном для визуального программирования, а не низкоуровневого.
p.s. после Рихтера еще советую посмотреть Дж. Харт, "системное программирование в среде windows", там очень много именно про многопоточность, сравнение скорости того или иного метода и так далее. Но сама книга сложная для понимания, требует базы.
 

tempow

Создатель
Регистрация
17 Сен 2013
Сообщения
18
Реакции
5
Для понимания сути многопоточности в Delphi рекомендую прочитать про библиотеку OmniThreadLibrary:
Для просмотра ссылки Войди или Зарегистрируйся
 

tanuchka

Создатель
Регистрация
7 Мар 2014
Сообщения
19
Реакции
0
Например, тут: Алексей Архангельский - Delphi. Справочное пособие. Язык Delphi, классы, функции Win32 и .NET
Д. Осипов - Delphi. Программирование для Windows, OS X, iOS и Android
 

tanuchka

Создатель
Регистрация
7 Мар 2014
Сообщения
19
Реакции
0
Будет полезно изучить эту книгу:
Martin Harvey. Multithreading - The Delphi Way.
Многопоточность - как это делается в Дельфи.
Для просмотра ссылки Войди или Зарегистрируйся
 

Ultharas

Создатель
Регистрация
25 Сен 2014
Сообщения
27
Реакции
10
Есть те кто пробовал многопоточность и на Delphi и на питоне? юзаю ее на питоне. GIL, конечно, парит - на делфи подобные траблы?
 

vinitek

Создатель
Регистрация
21 Дек 2015
Сообщения
46
Реакции
2
Есть те кто пробовал многопоточность и на Delphi и на питоне? юзаю ее на питоне. GIL, конечно, парит - на делфи подобные траблы?
Нормально работает просто описываешь клас
TNewThread = class(TThread)
private
{ Private declarations }
protected
procedure Execute; override;
end;
делаешь procedure TNewThread.Execute; где сам поток
и вызов потока
NewThread:=TNewThread.Create(true);
NewThread.FreeOnTerminate:=true;
NewThread.Priority:=tpLower;
NewThread.Resume;
ну и пауза и остановка
NewThread.suspend; NewThread.Resume;
NewThread.DoTerminate;
 

Volukrem

Создатель
Регистрация
8 Мар 2016
Сообщения
45
Реакции
5
Могу подсказать как сделать многопоточность в двух вариантах на c++builder
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху