PublicClass Singleton PrivateShared _Singleton As Singleton PrivateShared _Mutex AsNew System.Threading.Mutex '同步基元也可用于进程间同步 PrivateSubNew() End Sub PublicSharedFunction GetInstance() As Singleton _Mutex.WaitOne() '当在派生类中重写时,阻塞当前线程,直到当前的 System.Threading.WaitHandle 收到信号 Try If _Singleton IsNothingThen _Singleton = New Singleton EndIf Finally _Mutex.ReleaseMutex() '释放 System.Threading.Mutex 一次 EndTry Return _Singleton End Function End Class