Erstellen eines Zeitanbieters

Ein Zeitanbieter wird als DLL implementiert. Jede DLL kann mehrere Zeitanbieter unterstützen. Jeder Anbieter ist für seine eigene Konfiguration und Synchronisierung verantwortlich.

Zeitanbieter müssen die folgenden Rückruffunktionen implementieren:

Nachdem die Anbieter-DLL geladen wurde, ruft der Zeitanbieter-Manager TimeProvOpenauf und übergibt den Namen des Anbieters und Zeiger auf die folgenden Funktionen:

Diese Funktionen sind für die Verwendung durch den Zeitanbieter vorgesehen. Der Zeitanbieter verwendet TimeProvOpen, um ein Anbieterhandle zurückzugeben, das der Zeitanbieter-Manager beim Senden von Befehlen an den Zeitanbieter verwendet. Der Handlewert wird vom Zeitanbieter definiert und hauptsächlich verwendet, um zwischen verschiedenen Anbietern zu unterscheiden, die in derselben DLL implementiert sind. Der Zeitanbieter kann wichtige Ereignisse mit LogTimeProvEventFuncprotokollieren.

Der Zeitanbieter-Manager verwendet TimeProvCommand, um Befehle an den Zeitanbieter zu senden. Wenn der Zeitanbieter den Zeitanbieter-Manager benachrichtigen muss, dass Zeitbeispiele verfügbar sind, ruft er AlertSamplesAvailFunc auf. Der Zeitanbieter-Manager ruft dann TimeProvCommand mit dem TPC _ GetSamples-Befehl auf, um die Zeitbeispiele abzurufen. Es kann bis zu 16 Sekunden dauern, bis der Zeitanbieter-Manager das Beispiel anfordert. Daher sollte die Anwendung nicht auf die Anforderung warten.

Um die Genauigkeit sicherzustellen, sollte der Zeitanbieter alle zeitbezogenen Informationen mit getTimeSysInfoFuncabrufen.

Wenn der Zeitanbieter heruntergefahren werden soll, ruft der Zeitanbieter-Manager TimeProvCloseauf.