Implementing Offline
The Offline entry point function should perform cleanup tasks and gracefully shut down the resource. Keep in mind that the Cluster service invokes Offline during failover as well as during normal resource shutdown. (For more information, see Failover.) Your implementation of Offline should handle both situations while saving state and configuration information and taking any steps necessary to enable the resource to be brought online on another node if necessary.
To implement Offline
Required: The Offline entry point function can be called concurrently with the Terminate entry point function. Any resources that are accessed by both entry points must be properly guarded.
Recommended: For optimal performance, return a value within 300 milliseconds. If you need more time to perform all of the necessary cleanup tasks, have Offline start a worker thread and return ERROR_IO_PENDING immediately. See Implementing Pending Operations.