Перейти к содержанию
Fire Monkey от А до Я

Лидеры

  1. kami

    kami

    Пользователи


    • Баллы

      2

    • Постов

      643


  2. Brovin Yaroslav

    Brovin Yaroslav

    Администраторы


    • Баллы

      1

    • Постов

      2 124


  3. Равиль Зарипов (ZuBy)

    Равиль Зарипов (ZuBy)

    Модераторы


    • Баллы

      1

    • Постов

      2 517


  4. Maximus

    Maximus

    Пользователи


    • Баллы

      1

    • Постов

      84


Популярный контент

Показан контент с высокой репутацией 17.12.2017 во всех областях

  1. kami

    Разница в вызовах Synchronize

    Разница есть. И она не только в вызове Synchronize, но и Queue. Указание потока в качестве источника метода синхронизации позволяет вам впоследствии сделать TThread.RemoveQueuedEvents(myThread) перед его удалением. Вызов RemoveQueuedEvents необходим, если в синхронизируемых методах может идти обращение к полям и методам уничтожаемого потока. Потому что с удалением потока то, что подлежало синхронизации, никуда не пропадет, а раз поток уже не существует - у вас вылезет AV на ровном месте. Или же ваш код испортит чью-то память, что еще труднее отловить.
    2 балла
  2. Добавлять ClipRect при отрисовки в регионе. { clipping } procedure IntersectClipRect(const ARect: TRectF); virtual; abstract; procedure ExcludeClipRect(const ARect: TRectF); virtual; abstract;
    1 балл
  3. Maximus

    Разница в вызовах Synchronize

    http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Classes.TThread.Synchronize Судя по документации, если передать первым параметром поток, то в дальнейшем в основном потоке можно будет определить какой из дополнительных потоков вызвал метод. Если это не требуется, то можно ничего не передавать.
    1 балл
Эта таблица лидеров рассчитана в Москва/GMT+03:00
×
×
  • Создать...