private static volatile LyncClient lyncObj; /// <summary> The lock. internal static readonly object _lock = new object(); public static LyncClient LyncObj { get { if (lyncObj == null) { lock (_lock) { if (lyncObj == null) { while (!WaitForLyncStart()) { Thread.Sleep(1000); } lyncObj = LyncClient.GetClient(); } } } return lyncObj; } }