title: How can I make AllocateHwnd threadsafe?
body: <p>VCL components are designed to be used solely from the main thread of an application. For visual components this never presents me with any difficulties. However, I would sometimes like to be able to use, for example, non-visual components like <code>TTimer</code> from a background thread. Or indeed just create a hidden window. This is not safe because of the reliance on <code>AllocateHwnd</code>. Now, <code>AllocateHwnd</code> is not threadsafe which I understand is by design.</p>
  
  <p>Is there an easy solution that allows me to use <code>AllocateHwnd</code> from a background thread?</p>