Ist der Timer ein Shared Object? Named Timer oder sowas?
VisTimer := CreateWaitableTimer(nil, False, 'BassVisTimer');
Kann ich jetzt nicht beantworten ob er Shared ist.. sorry!
Zitat:
If the named timer object exists before the function call, the function returns a
handle to the existing object and GetLastError returns ERROR_ALREADY_EXISTS.
Vermutlich also ja: Alle deine Instanzen teilen sich einen Timer.
Was machst du mit dem Timer am Programmende? Ein
CloseHandle sollte eigentlich keine Probleme machen; wenn du ihn deaktivierst, würde das deinen Fehler erklären.
Außerdem:
Zitat:
When an auto-reset timer is signaled, only one waiting thread becomes schedulable.
Damit könnte eventuell ein weiterer Fehler auftreten, indem ein Thread in das Timeout läuft, weil immer andere Threads signalisiert werden.