Вверх ↑
Ответов: 4621
Рейтинг: 746
#1: 2017-10-03 13:14:22 ЛС | профиль | цитата
По поводу Synchronize.
С одной стороны: работает - не трожь.
С другой: если тебе чисто внутренне больше нравится реализация Galkov-а, можно заменить.

Лично мне не очень нравится такой подход по следующим причинам:
- не очень "чистоплотная" реализация с подставным объектом
- отсутствует глобальная функция CallSynchronized, которую я добавил для использования этого функционала из других компонентов с собственной реализацией потоков. Например, асинхронный вызов может приходить из DLL, типа BASS, и компонент внутри себя захочет сообщить о нём в схему синхронно.
- не знаю, насколько актуально, но KOL-овский метод Synchronize не работает в неоконных приложениях. В моей реализации это учтено и событие все равно вызывается, но асинхронно. При необходимости туда можно добавить синхронизацию даже для неоконных приложений.
карма: 26

0