第一:Abort你创建的并且还在运行的线程,
第二:关闭你的Socket对象,也就是关闭你的连接
第三:请调用Envirment.Exit(0)的方式进行程序的退出!!
温馨提示:系统内置的退出方法只会关闭当前线程(主线程)的所有动作并释放资源,如果你创建了其他的线程,而且这些子线程还在运行,那么程序将等待你的所有子线程运行结束后,然后关闭进程,如果你的子线程中出现死循环的 *** 作,那么你的程序将永远不会退出!!就就造成你的你这个关不掉的情况!!
不能关的,你正在启动的这个窗体已经是主线程了,如果你把它关了,你就等于是把主线程关了,其他的画面就算是起来了,你也看不到,马上就被关闭了。如果你想要做到你说的效果,那就只能这么做:Form2form2=newForm2()form2.ShowDialog(this)//这里一定要用ShowDialog,否则画面程序依旧会结束。this.Close()//关闭Form2后,程序退出然后在Form2的Load事件里写上:this.Owner.Hide()//隐藏Form1只有这么做,才能达到你的目的。如楼上所示,直接在按钮的单击事件中写this.Close()就可以关闭窗体,同时相应的进程会自动关闭,不需要你自己处理。如果你是需要关闭进程的代码,则如下:先确定你的进程 Process[] plist = Process.GetProcessesByName("这里输入你的窗体名称")
Process p = plist[0]
结束进程的方式: p.Kill() 就可以强制关掉进程。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)