【问题标题】:w3wp.exe keeping files locked after processing in webservicew3wp.exe 在 web 服务中处理后保持文件锁定
【发布时间】:2010-06-13 19:43:06
【问题描述】:

我有一个网络服务,我注意到 wwwroot 文件夹中的一些 dll 在网络服务执行后会被记录下来。

重启电脑后问题解决。

我可以在我的代码中添加一些可以释放 dll 的东西吗?

【问题讨论】:

  • 这是 WCF 服务还是旧版 ASMX 服务?
  • 嗨约翰,这是一个普通的网络服务

标签: .net web-services w3wp


【解决方案1】:

尝试回收运行 Web 服务的 AppPool,或使用 iisreset。

iisreset /stop 将停止 IIS 并释放 dll。 iisreset /start 将再次启动 IIS 备份。

如果你回收应用程序池,那么 dll 的锁将被释放,直到有人再次点击你的 web 服务,并获得一个新的锁。

【讨论】:

  • @mouthpiec - 如果您使用 ADSI 并且您的代码不在同一个应用程序池下运行,您可以从您的 C# 代码重新启动 应用程序池。但不要尝试从您的代码重新启动 IIS 实例,尤其是当您的代码在该 IIS 版本中运行时(您的代码将有效地自行关闭)。 iisreset 是一项管理类型的任务,应始终手动完成,如果您需要这样做并且其他人正在使用服务器,您可能必须提前计划。
  • @mouthpiec - 你能描述一下你为什么要解锁 dll 的场景吗?这样就更容易建议要走的路线。
  • 这不起作用。站点和 Web 服务器都已停止,根据进程资源管理器,该文件仍被 w3wp 锁定。 Windows 10。仍然完全坏了。令人惊讶的是,这些文件锁定问题自 XP 以来一直存在,但仍未解决。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-13
相关资源
最近更新 更多