我有一个解决方案,我正在尝试从.NET 2转换为.NET 4.此解决方案中有多个项目,其中一些在C#中,其中一些在VB中.他们中的大多数使用system.xml进行XML创建和解析.
我已经将所有项目重新定位到.NET 4,并进行编译.但是,当我尝试运行时,我几乎立即得到一个System.FieldAccessException,说"如果类库中字段的访问级别已更改,请重新编译引用该库的任何程序集.".在此之前我确实重新编译了整个解决方案(之后再次尝试,没有变化).
然后,我使用程序集绑定日志查看器查看是否有任何绑定失败,因为这是在项目中引用了不同的dll时发生的.果然,那里有失败.他们在两个不同的VB项目中,他们看起来像这样:
The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.
Assembly manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
Running under executable <path to my exe>
--- A detailed error log follows.
=== Pre-bind state information ===
LOG: DisplayName = <projname>.XmlSerializers, Version=2013.20.0.0, Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL (Fully-specified)
LOG: Appbase = <projectpath>
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = <projname>.vshost.exe Calling assembly : System.Xml, …Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法将OpenMP作业提交给Grid Engine调度程序,同时指定它应运行的核心数.等同于LSF的-n选项,或PBS的-l nodes = [count]选项.
当我搜索这个时,我会看到一堆答案,指定语法如"-pe threaded [核心数]".在这些答案中,没有提到必须创建一个称为"线程"的并行环境.但是,当我尝试这种语法时,它失败了,说请求的并行环境线程不存在.当我输入"qconf -spl"时,我得到的唯一结果就是"make".那么 - 默认情况下这个"线程"并行环境是否存在,或者这是否必须在集群上手动创建?
如果必须手动创建,是否还有其他语法可以将作业提交到不依赖于群集上可配置命名的多个核心?这是为了提交到集群的第三方程序,所以我不想不仅依赖于创建此pe的客户端,而是将其命名为相同等等...我希望-l选项可能有一些东西,但我无法找到任何这样的排列来实现这一目标.