winform调用了一个类的静态方法.  关闭窗体。 exe文件依然存在内存中,而且占cpu 99%……

解决方案 »

  1.   

    在关闭窗体的时候Application.Exit();
      

  2.   

    Application.Exit(); 也不行。
    我没有用线程。我调用了一个类a,里面全是静态的方法和事件等。  等我执行完a里的方法。 然后关闭窗体。但是.exe 依然存在。而且占cpu 99%……是不是调用完 静态方法后要销毁。 如何销毁?
      

  3.   

    用了 this.Close();
    也不行。
      

  4.   

    当调用 Application.Exit 方法以退出应用程序时,不引发 Form.Closed 和 Form.Closing 事件。如果在必须执行的其中一个事件中有验证代码,则在调用 Exit 方法之前,应分别为每个打开的窗体调用 Form.Close 方法。
      

  5.   

    一般说来用Application.Exit()就可以了,
    楼主在前面用This.dispose()试试
      

  6.   

    代码太多了。2000行。这个类是个控制台程序 , 我把它改成  winform上应用。可能是把 控制台程序里的 东西没有销毁。
      

  7.   

    谢谢大家。 我想问题出在  :这个类在控制台应用程序。 运行正常。 我把它改成winform 把里面的某些无用东西 调用了 而没有销毁?高手指点一下: 该怎么做?
      

  8.   

    还有 运行着个类的时候 cpu 占用正常。 但是一点关闭窗体。 就马上升到99%
      

  9.   

    whmjw(明年今日十年之后) 正解最差的方法就是Process.Kill()to:wuhuiITren(混了这么久也才一条裤衩)也许数据库还有别人占用的实际有人用 或者死锁了,数据库认为有人占用
      

  10.   

    主线程还没有结束。TO:wuhuiITren(混了这么久也才一条裤衩) 
    把数据库重新启动一下,所有的链接就全断开了。然后再还原。
      

  11.   

    kill 掉也行 。只是不知原因!
      

  12.   

    我的程序也是这样啊,加了exit可是还得在任务管理器里结束程序,
      

  13.   

    a a1=new a();
     a.dispose()再 close()
      

  14.   

    net里有个是Process类~实在不行用这个类有窗体close没窗体kill
      

  15.   

    问题一句话:我的数据库连接是用完就关闭的,怎么我还原数据库的时候提示数据库正在使用呢?
    -------------------------------------------
    假如有其它的用户连接到你数据库,还原前可以用
    ALTER DATABASE dbname
        SET SINGLE_USER 
        WITH ROLLBACK IMMEDIATE 
    强行关闭所有连接并回滚事务,再还原即可
      

  16.   

    我觉得你将控制台该为winfrom的时候是不是有什么控件初始化或者容器有问题?按说不应该出现这种情况的,建议你不要手工添加winform初始化代码,出错不好察