Вниз
Скачать: CL | DM;

Потокобезопасность New / Dispose   Найти похожие ветки 

 
Piter ©   (2006-01-04 20:06) [0]

Насколько безопасно использовать New в одном потоке, а Dispose делать в другом потоке?

Объекты внутри записей не используются.


 
begin...end ©   (2006-01-04 20:41) [1]

Насколько я знаю, безопасно. Только менеджер памяти должен быть уведомлен о многопоточности (с помощью переменной IsMultiThread).


 
jack128 ©   (2006-01-04 20:56) [2]

А сам как думаешь? Например в ряде случаев TThread может создаться в одном  потоке, а уничтожаться в другом ;)


 
Almaz ©   (2006-01-05 11:53) [3]


> Только менеджер памяти должен быть уведомлен о многопоточности
> (с помощью переменной IsMultiThread).

Если не использовать CreateThread напрямую, а использовать функцию BeginThread или наследников TThread, то самому изменять значение IsMultiThread не нужно - за вас это сделает BeginThread.

Удачи.


 
Piter ©   (2006-01-05 13:30) [4]

Ясно... а вот интересно, в продолжении темы. А почему по умолчанию не установлена isMultiThread в true? Чем это "плохо"?


 
begin...end ©   (2006-01-05 13:34) [5]

> Piter ©   (05.01.06 13:30) [4]

> Чем это "плохо"?

Замедлением работы менеджера памяти, например.


 
Piter ©   (2006-01-05 13:47) [6]

begin...end ©   (05.01.06 13:34) [5]
Замедлением работы менеджера памяти, например


я тоже подумал об этом. Но ты это знаешь или тоже предполагаешь?


 
begin...end ©   (2006-01-05 13:54) [7]

> Piter ©   (05.01.06 13:47) [6]

Я предполагаю. Глядя на код в getmem.inc.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
2-1137503230
Ольга
2006-01-17 16:07
2006.02.05
Высота ToolButtons в ToolBar


4-1132356146
sergey1
2005-11-19 02:22
2006.02.05
как можно использовать функцию DlgDirList без применения визуальн


15-1137094072
Gero
2006-01-12 22:27
2006.02.05
Рисование фигур с антиалиасингом


4-1132571999
Badland
2005-11-21 14:19
2006.02.05
Шлюз на WinAPI or VCL


15-1137105313
Ricks
2006-01-13 01:35
2006.02.05
Нашел паяльник!




   Наверх