0

我有一个运行 .ASP.NET WebForms .NET 4.0 代码的 Windows Server 2008 R2 IIS 7 实例。在回发中,有一个运行长时间运行的进程的线程生成。

下面的代码在 IIS7 下不起作用。它在 Cassini 和我们可用的另一个 Windows Server 2003 IIS6 实例上本地运行良好。

var t = Task.Factory.StartNew(() => ProcessWorkItem(wid));
var ex = t.Exception;
Log(string.Format("Spawned background task to wid={5}: id={1} status={4} isfaulted={3} iscompleted={2} ex={0}",
            ex == null ? "no exception" : ex.ToString(),
            t.Id,
            t.IsCompleted,
            t.IsFaulted,
            t.Status,
            wid));

无论服务器如何,这都会记录“无异常”和“isfaulted=false”和“iscompleted=true”。

但是,ProcessWorkItem在 IIS7 中也有一条日志语句,尽管它在 IIS6 或 Cassini 本地开发服务器上运行良好。

知道为什么会这样吗?

4

0 回答 0