text: public virtual void Sync(){bool interrupted = false;try{while (true){MergeThread toSync = null;lock (this){foreach (MergeThread t in m_mergeThreads){if (t != null && t.IsAlive){toSync = t;break;}}}if (toSync != null){try{toSync.Join();}catch (ThreadInterruptedException ie){interrupted = true;}}else{break;}}}finally{if (interrupted){Thread.CurrentThread.Interrupt();}}}