コード例 #1
0
        public static void ShowSplashForm()
        {
            var showDialogThread = new Thread(() => {
                splashForm = new SplashForm();

                splashForm.ShowDialog();
            });

            var waitDialogToCloseThread = new Thread(() => {
                CreateSem.WaitOne();

                CloseSem.WaitOne();

                splashForm.Invoke(new MethodInvoker(() => splashForm.Close()));
            });

            showDialogThread.Start(); // 开始显示splashForm

            //showDialogThread.Join(); // 等待创建splashForm完成

            waitDialogToCloseThread.Start(); // 开始监控信号量 等待splashForm关闭.
        }