public void start ( ) { syncLock . lock ( ) ; try { if ( ! this . isConfigured ) { return ; } instanceChangeStreamListener . stop ( ) ; if ( listenersEnabled ) { instanceChangeStreamListener . start ( ) ; } if ( syncThread == null ) { syncThread = new Thread ( new DataSynchronizerRunner ( new WeakReference <> ( this ) , networkMonitor , logger ) , "dataSynchronizerRunnerThread" ) ; } if ( syncThreadEnabled && ! isRunning ) { syncThread . start ( ) ; isRunning = true ; } } finally { syncLock . unlock ( ) ; } }
Starts data synchronization in a background thread .