3

我的应用程序中有 2 个工作人员和自动扩缩器 (WASABi)。每个工作人员在手动创建的 AppDomain(AppDomain.CreateDomain()等等)中计算一些数据。一个域用于一项计算任务。

有时完成的任务很少。一切正常,没有异常发生。

但有时有很多任务要完成。在这些时刻,自动扩缩器必须再添加一名工作人员(使用反应规则制作)。加载新实例后,神奇的事情发生了:在自定义 AppDomain 中有这样的异常:

State: Error System.TypeInitializationException: The type initializer for 'Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment' threw an exception. --->
System.DllNotFoundException: Unable to load DLL 'kernel32.dll': The filename or extension is too long. (Exception from HRESULT: 0x800700CE)
 at Microsoft.Win32.SafeNativeMethods.OutputDebugString(String message)
 at System.Diagnostics.DefaultTraceListener.Write(String message, Boolean useLogFile)
 at System.Diagnostics.TraceListener.WriteHeader(String source, TraceEventType eventType, Int32 id) at System.Diagnostics.TraceListener.TraceEvent(TraceEventCache eventCache, String source, TraceEventType eventType, Int32 id, String format, Object[] args)
 at System.Diagnostics.TraceSource.TraceEvent(TraceEventType eventType, Int32 id, String format, Object[] args) at Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment..cctor()
 --- End of inner exception stack trace
 --- at Microsoft.WindowsAzure.ServiceRuntime.RoleEnvironment.get_CurrentRoleInstance()
 at Tailspin.Shared.Infrastructure.Helpers.LogError(Exception ex, String message, Object[] args) at Tailsping.Workers.Processor.ChannelUpdater.Update()
 at Tailsping.Workers.Processor.AppdomainHelper.b__1[T]()
 at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate)
 at Tailsping.Workers.Processor.AppdomainHelper.RunInAppDomain[T](Func`1 func)
 at Tailsping.Workers.Processor.ProcessorService.ExecWrapperInternal(String wrapperXml)

它无法加载一些名为 ' kernel32.dll ' 的 DLL :)

谷歌表示注意到。有什么建议么?

4

0 回答 0