private bool PerformSync ()
{
lock (sync_mutex) {
if (sync_thread == null) {
sync_thread_wait = new AutoResetEvent (false);
sync_thread = new Thread (new ThreadStart (PerformSyncThread));
sync_thread.Name = "iPod Sync Thread";
sync_thread.IsBackground = false;
sync_thread.Priority = ThreadPriority.Lowest;
sync_thread.Start ();
}
sync_thread_wait.Set ();
lock (sync_timeout_mutex) {
sync_timeout_id = 0;
}
return false;
}
}