Thanks everyone for the multi-threading techniques. What about a Property to access the threaded variable. I've turned my unit into a component which runs inside the thread, and added a property in this component to access the local integer. eg. property volLeft : Integer read FLeft; Would it be threadsafe to read the property? Cheers, Ross.