Компоненты VCL предназначены для использования исключительно из основного потока приложения. Для визуальных компонентов это никогда не представляет мне никаких трудностей. Однако иногда мне хотелось бы использовать, например, невизуальные компоненты, такие как TTimer из фонового потока. Или просто создайте скрытое окно. Это не безопасно из-за зависимости от AllocateHwnd. Теперь AllocateHwnd не является потокобезопасным, что я понимаю по дизайну.
Есть ли простое решение, которое позволяет мне использовать AllocateHwnd из фонового потока?