-
Так я и почитал. Всё ясно и понятно написано. В отличие от сайа некоей конторы.
-
> Dimka Maslov © (24.03.16 20:15) [17]
1) Не кроссплатформенно
2) Не выставляет флаг IsMultithreaded автоматом.
-
А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
-
А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
-
А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
-
> Dimka Maslov © (24.03.16 12:39) [12]
>
>
> > Вот тут Вы грохаете экземпляр
>
>
> В том и вопрос, что он вообще не грохается.
на каких основаниях сделан такой вывод.
-
> Dimka Maslov © (24.03.16 12:39) [12]
>
>
> > Вот тут Вы грохаете экземпляр
>
>
> В том и вопрос, что он вообще не грохается.
на каких основаниях сделан такой вывод.
-
> Dimka Maslov © (24.03.16 12:39) [12]
>
>
> > Вот тут Вы грохаете экземпляр
>
>
> В том и вопрос, что он вообще не грохается.
на каких основаниях сделан такой вывод.
-
> Dimka Maslov © (24.03.16 08:38) [6]
TThread - один из самых удобных классов в Делфи. Разве что потоковые нововведения в самых новых версиях делфи могут соперничать (parallel lib).
Прежде чем использовать TThread, нужно проникнуться его идеологией, хотя бы поверхностно, а не кидаться удалять объект изнутри самого себя.
Одна из сильнейших сторон TThread - событие OnTerminate, выполняющиеся всегда в контексте главного потока.
Вообще современный TThread чего только не умеет.
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := 1;
TThread.CreateAnonymousThread(
procedure
begin
Inc(I);
TThread.Queue(nil,
procedure
begin
ShowMessage(I.ToString);
end
);
end
).Start;
end;
-
> Dimka Maslov © (24.03.16 08:38) [6]
TThread - один из самых удобных классов в Делфи. Разве что потоковые нововведения в самых новых версиях делфи могут соперничать (parallel lib).
Прежде чем использовать TThread, нужно проникнуться его идеологией, хотя бы поверхностно, а не кидаться удалять объект изнутри самого себя.
Одна из сильнейших сторон TThread - событие OnTerminate, выполняющиеся всегда в контексте главного потока.
Вообще современный TThread чего только не умеет.
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := 1;
TThread.CreateAnonymousThread(
procedure
begin
Inc(I);
TThread.Queue(nil,
procedure
begin
ShowMessage(I.ToString);
end
);
end
).Start;
end;
-
> Dimka Maslov © (24.03.16 08:38) [6]
TThread - один из самых удобных классов в Делфи. Разве что потоковые нововведения в самых новых версиях делфи могут соперничать (parallel lib).
Прежде чем использовать TThread, нужно проникнуться его идеологией, хотя бы поверхностно, а не кидаться удалять объект изнутри самого себя.
Одна из сильнейших сторон TThread - событие OnTerminate, выполняющиеся всегда в контексте главного потока.
Вообще современный TThread чего только не умеет.
procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
I := 1;
TThread.CreateAnonymousThread(
procedure
begin
Inc(I);
TThread.Queue(nil,
procedure
begin
ShowMessage(I.ToString);
end
);
end
).Start;
end;
-
> 1) Не кроссплатформенно
И пёс с им.
> на каких основаниях сделан такой вывод.
На основании анализа утечек памяти.
> событие OnTerminate
Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
-
> 1) Не кроссплатформенно
И пёс с им.
> на каких основаниях сделан такой вывод.
На основании анализа утечек памяти.
> событие OnTerminate
Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
-
> 1) Не кроссплатформенно
И пёс с им.
> на каких основаниях сделан такой вывод.
На основании анализа утечек памяти.
> событие OnTerminate
Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
-
> Dimka Maslov © (25.03.16 09:38) [25]
> Легко заменяется на SendMessage(Application.MainFormHandle,
> .....), которое тоже выполнится в контексте главного потока.
При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
-
> Dimka Maslov © (25.03.16 09:38) [25]
> Легко заменяется на SendMessage(Application.MainFormHandle,
> .....), которое тоже выполнится в контексте главного потока.
При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
-
> Dimka Maslov © (25.03.16 09:38) [25]
> Легко заменяется на SendMessage(Application.MainFormHandle,
> .....), которое тоже выполнится в контексте главного потока.
При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
-
> OnTerminate не требует окон.
А чего тогда требует?
-
> OnTerminate не требует окон.
А чего тогда требует?
-
> OnTerminate не требует окон.
А чего тогда требует?