Tag: cpu architecture

使用CLR(和变体)将哪些CPU体系结构写入int“隐式易失性”?

我最近在这里学到以下是x86 CPU上的线程安全x86 CLR(不一定是ECMA标准CLR) public class SometimesThreadSafe { private int value; public int Value { get { return value; } } public void Update() { Interlocked.Add(ref value, 47); } } 这是因为在此类体系结构上写入int可确保同步任何其他CPU缓存。 但是在ARM CPU上,这不是线程安全的! 从另一个线程读取值可以读取CPU缓存中的旧副本。 所以问题在于CPU体系结构以及CLR的哪些版本及其变体(例如Mono)是否具有线程安全性?

Visual Studio MVC平台 – x86和x64?

我们有一个非常烦人的问题,大约一个月前开始,我们可以在一个需要自动代码生成/脚手架的MVC项目中添加一个控制器。 我们今天发现它与平台有关。 最初,它设置为任何CPU,对我来说似乎是正确的设置。 但是,我们将其设置为x86,因为我们的Visual Studio版本是32位,我们可以再次添加控制器。 添加了一个构建的控制器,然后去查看应用程序,它给出了以下错误: 无法加载文件或程序集“仪表板”或其依赖项之一。 尝试加载格式不正确的程序。 描述:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。 exception详细信息:System.BadImageFormatException:无法加载文件或程序集“仪表板”或其依赖项之一。 尝试加载格式不正确的程序。 Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Assembly Load Trace: The following information can be helpful to […]

正确的方法来检测CPU架构?

我正在尝试检测正确的cpu架构,以安装x86 msi或x64 msi文件。 如果我是对的,对于msi我需要os cpu架构 我不完全确定我的方式是否正确,因为我无法测试它。 你怎么看? private static string GetOSArchitecture() { string arch = System.Environment.GetEnvironmentVariable(“PROCESSOR_ARCHITECTURE”); string archWOW = System.Environment.GetEnvironmentVariable(“PROCESSOR_ARCHITEW6432”); if(archWOW != null && archWOW != “” && archWOW.Contains(“64”)) return “x64”; if(arch.Contains(“86”)) return “x86”; if (arch.Contains(“64”)) return “x64”; return “”; }

设置针对x86和x64?

我有一个程序需要x64和x86 dll(它在运行时确定它需要哪些),但在尝试创建一个设置时,它会抱怨: 文件AlphaVSS.WinXP.x64.dll’目标’AMD64’与项目的目标平台’x86’不兼容 文件AlphaVSS.Win2003.x64.dll’目标’AMD64’与项目的目标平台’x86’不兼容 文件AlphaVSS.Win2008.x64.dll’目标’AMD64’与项目的目标平台’x86’不兼容 如何让我的设置目标同我的程序一样?