Конференция "Прочее" » Как жить дальше?
 
  • Dimka Maslov © (24.03.16 22:59) [20]
    Так я и почитал. Всё ясно и понятно написано. В отличие от сайа некоей конторы.
  • DVM © (24.03.16 23:17) [21]

    > Dimka Maslov ©   (24.03.16 20:15) [17]

    1) Не кроссплатформенно
    2) Не выставляет флаг IsMultithreaded автоматом.
  • Kerk © (24.03.16 23:57) [22]
    А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
  • Kerk © (24.03.16 23:57) [22]
    А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
  • Kerk © (24.03.16 23:57) [22]
    А чем можно смотреть использование памяти в рантайм? В смысле - сделать снимок и посмотреть кто, сколько и для чего памяти выделил. Бывает такое бесплатное?
  • Германн © (25.03.16 01:55) [23]

    > Dimka Maslov ©   (24.03.16 12:39) [12]
    >
    >
    > > Вот тут Вы грохаете экземпляр
    >
    >
    > В том и вопрос, что он вообще не грохается.

    на каких основаниях сделан такой вывод.
  • Германн © (25.03.16 01:55) [23]

    > Dimka Maslov ©   (24.03.16 12:39) [12]
    >
    >
    > > Вот тут Вы грохаете экземпляр
    >
    >
    > В том и вопрос, что он вообще не грохается.

    на каких основаниях сделан такой вывод.
  • Германн © (25.03.16 01:55) [23]

    > Dimka Maslov ©   (24.03.16 12:39) [12]
    >
    >
    > > Вот тут Вы грохаете экземпляр
    >
    >
    > В том и вопрос, что он вообще не грохается.

    на каких основаниях сделан такой вывод.
  • Eraser © (25.03.16 05:38) [24]

    > 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;
  • Eraser © (25.03.16 05:38) [24]

    > 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;
  • Eraser © (25.03.16 05:38) [24]

    > 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 © (25.03.16 09:38) [25]

    > 1) Не кроссплатформенно


    И пёс с им.


    > на каких основаниях сделан такой вывод.


    На основании анализа утечек памяти.


    >  событие OnTerminate


    Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
  • Dimka Maslov © (25.03.16 09:38) [25]

    > 1) Не кроссплатформенно


    И пёс с им.


    > на каких основаниях сделан такой вывод.


    На основании анализа утечек памяти.


    >  событие OnTerminate


    Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
  • Dimka Maslov © (25.03.16 09:38) [25]

    > 1) Не кроссплатформенно


    И пёс с им.


    > на каких основаниях сделан такой вывод.


    На основании анализа утечек памяти.


    >  событие OnTerminate


    Легко заменяется на SendMessage(Application.MainFormHandle, .....), которое тоже выполнится в контексте главного потока.
  • DVM © (25.03.16 11:41) [26]

    > Dimka Maslov ©   (25.03.16 09:38) [25]


    > Легко заменяется на SendMessage(Application.MainFormHandle,
    >  .....), которое тоже выполнится в контексте главного потока.

    При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
  • DVM © (25.03.16 11:41) [26]

    > Dimka Maslov ©   (25.03.16 09:38) [25]


    > Легко заменяется на SendMessage(Application.MainFormHandle,
    >  .....), которое тоже выполнится в контексте главного потока.

    При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
  • DVM © (25.03.16 11:41) [26]

    > Dimka Maslov ©   (25.03.16 09:38) [25]


    > Легко заменяется на SendMessage(Application.MainFormHandle,
    >  .....), которое тоже выполнится в контексте главного потока.

    При условии наличия окон в программе и цикла выборки сообщений. OnTerminate не требует окон.
  • NoUser © (25.03.16 14:48) [27]
    > OnTerminate не требует окон.
    А чего тогда требует?
  • NoUser © (25.03.16 14:48) [27]
    > OnTerminate не требует окон.
    А чего тогда требует?
  • NoUser © (25.03.16 14:48) [27]
    > OnTerminate не требует окон.
    А чего тогда требует?
 
Конференция "Прочее" » Как жить дальше?
Есть новые Нет новых   [134434   +28][b:0][p:0.001]