ITPub博客

首页 > Linux操作系统 > Linux操作系统 > windows 2003下杀dllhost.exe进程

windows 2003下杀dllhost.exe进程

原创 Linux操作系统 作者:lfree 时间:2009-11-13 09:52:07 0 删除 编辑
我们的中间件服务器的dllhost.exe 内存使用达到1.2G的时候,中间件就无法提供服务了,以前我们的做法就是重启服务器,如果事情在晚上会非常麻烦。

我测试如果在任务管理器里面杀掉dllhost.exe(注意有两个,要杀用户=IWAM_XXX的进程,也就是IIS的用户),系统自己会起来新的dllhost.exe进程。如果我能定时在内存使用达到1.2G,kill掉该进程,就可以彻底解决这个问题了。

我看了一些文档,最后发现只要计划任务里面调用这个命令就可以解决这个问题了:

TASKKILL /F  /FI "USERNAME eq IWAM_XXX" /FI "IMAGENAME eq dllhost.exe" /FI "MEMUSAGE gt 524288"

实际上taskkill /? 看帮助,简单说明一下:

/FI   filter           应用筛选器以选择一组任务。
                       允许使用 "*"。例如,映像名称 eq acme*

筛选器:
    筛选器名      有效运算符                有效值
    -----------   ---------------           -------------------------
    STATUS        eq, ne                    RUNNING |
                                            NOT RESPONDING | UNKNOWN
    IMAGENAME     eq, ne                    映像名称
    PID           eq, ne, gt, lt, ge, le    PID 值
    SESSION       eq, ne, gt, lt, ge, le    会话编号。
    CPUTIME       eq, ne, gt, lt, ge, le    CPU 时间,格式为
                                            hh:mm:ss。
                                            hh - 时,
                                            mm - 分,ss - 秒
    MEMUSAGE      eq, ne, gt, lt, ge, le    内存使用量,单位为 KB
    USERNAME      eq, ne                    用户名,格式为 [domain\]user
    MODULES       eq, ne                    DLL 名称
    SERVICES      eq, ne                    服务名称
    WINDOWTITLE   eq, ne                    窗口标题

我这里就是杀掉USERNAME=IWAM_XXX,IMAGENAME=dllhost.exe, MEMUSAGE大于512M的时候杀进程。

在操作前可以使用tasklist命令自己看看,两者基本语法相似的。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-619546/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7969562