使用 C# 设置 CPU 的关联性

2023-11-22

我已经用 C# 创建了一个窗口应用程序。现在我想设置该应用程序的 CPU 亲和力。我可能有 2 个处理器、4 个处理器、8 个处理器或可能超过 8 个处理器。

我想使用接口的输入来设置 cpu 关联性。

我怎样才能做到这一点?如何使用Environment.ProcessorCount设置亲和力?


尝试这个:

Process.GetCurrentProcess().ProcessorAffinity = (System.IntPtr)2;

Here更多相关内容。

处理器亲和性将每个处理器表示为一个位。位 0 代表处理器一,位 1 代表处理器二,依此类推。下表显示了可能的子集处理器亲和性对于四处理器系统。

Property value (in hexadecimal)  Valid processors

0x0001                           1
0x0002                           2
0x0003                           1 or 2
0x0004                           3
0x0005                           1 or 3
0x0007                           1, 2, or 3
0x000F                           1, 2, 3, or 4

这是一个小示例程序:

//TODO: manage exceptions
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("Total # of processors: {0}", Environment.ProcessorCount);
        Console.WriteLine("Current processor affinity: {0}", Process.GetCurrentProcess().ProcessorAffinity);
        Console.WriteLine("*********************************");
        Console.WriteLine("Insert your selected processors, separated by comma (first CPU index is 1):");
        var input = Console.ReadLine();
        Console.WriteLine("*********************************");
        var usedProcessors = input.Split(',');

        //TODO: validate input
        int newAffinity = 0;
        foreach (var item in usedProcessors)
        {
            newAffinity = newAffinity | int.Parse(item);
            Console.WriteLine("Processor #{0} was selected for affinity.", item);
        }
        Process.GetCurrentProcess().ProcessorAffinity = (System.IntPtr)newAffinity;
        Console.WriteLine("*********************************");
        Console.WriteLine("Current processor affinity is {0}", Process.GetCurrentProcess().ProcessorAffinity);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 C# 设置 CPU 的关联性 的相关文章

  • 如果图像包含特定颜色则

    是否有一种简单的方法来检查图像是否包含特定的 RGB 颜色 例如 Dim img As Image Image FromFile C image png If img contains color red toRGB then 我认为检查这
  • 比较 LINQ to SQL 中的两个日期

    我有一个数据库 其中有一个名为会议的表 会议日期使用以下格式存储在此表中 May 2nd 2011 例如 格式为5 2 2011 我的要求是获取两个日期 例如 2011 年 4 月 25 日和 2011 年 5 月 2 日 之间的会议 并编
  • NHibernate IQueryable 集合作为 root 的属性

    我有一个根对象 它有一个集合属性 例如 I have a Shelf object that has Books Now public class Shelf public ICollection
  • boost::asio::io_service 是否保留处理程序的顺序?

    Does boost asio io service http www boost org doc libs release doc html boost asio reference io service html保证处理程序的调用顺序与
  • 多维数组和指向指针的指针

    创建多维数组时char a 10 10 根据我的书 它说你必须使用类似于char a 10 将数组传递给函数 为什么必须这样指定长度 您不是只是将双指针传递给 with 并且该双指针不是已经指向分配的内存吗 那么为什么参数不能是char a
  • 如何从Web JavaScript应用程序获取桌面C#程序中的变量

    我遇到一个问题 有两个应用程序 一种是 C 中的桌面应用程序 另一种是 javascript 中的 Web 应用程序 运行桌面应用程序中的一些变量或信息需要传输到Web应用程序 有谁知道如何解决这个问题 有人愿意提供更多细节来解决这个问题吗
  • 我可以在 C++ 中重写非虚函数吗

    我想知道我可以重写 C 中的非虚函数吗 因为我在使用 C 时发现了这个问题override关键字我的代码如下 class A public void say cout lt lt From A n class B public A publ
  • 三种 System.Drawing 方法表现出缓慢的绘制或闪烁:解决方案?或其他选择?

    我正在通过 System Drawing 进行一些绘图 但遇到了一些问题 我将数据保存在队列中 并将该数据绘制 绘制 到三个图片框中 此方法填充图片框 然后滚动图形 所以不要在以前的绘图上绘制 并且逐渐看起来更混乱 我找到了两种绘制图表的解
  • 如何使用 ProtoGen 从 proto 文件生成结构

    我们一直在使用 protobuf net ProtoGen 从 proto 文件生成 C cs 文件 我们希望代替类来生成结构 例如 DataContract public struct Entity1 ProtoMember 1 publ
  • 为什么我无法调试动态加载的程序集?

    我正在开发一个 Web API 项目 该项目使用内部模拟框架 允许拦截和修改来自控制器的响应 它使用 MEF 加载包含某些先决条件匹配时执行的代码的程序集 我知道这是正常工作的 因为我可以在响应中看到模拟已被执行 但由于某种原因我无法调试动
  • 从视图模型调用方法的命令

    好吧 我倾向于避免使用命令 因为它们总是让我感到困惑 但我正在进行一个新项目 并且正在尝试正确构建它 并且在我看来没有任何代码隐藏 基本上我现在想做的就是连接一个按钮来触发一个命令 在我的视图模型上执行一些操作 但不知何故 如此简单的事情仍
  • Request.Form 和 Request.QueryString 之间的区别?

    有人可以告诉我两者之间的确切区别吗Request Form and Request QueryString 我知道一个区别 比如 如果HTTP请求方式为POST 则用户提交的数据在申请表 收藏 如果HTTP请求方法是GET 则用户提交的数据
  • 将 System.Array 从 .Net 编组到 vb6

    我有一个 Net 组件 它有一个 COM 可见类 该类具有返回 System Array 的方法 它实际上返回一个字符串数组 但返回类型声明为 System Array 不要问我 为什么 我知道我可以将返回类型声明为 string 这样就可
  • C++ 联合数组和变量?

    在C 中没有办法做这样的事情吗 union Scalar x y Scalar v 2 Where x v 0 and y v 1 既然您使用的是 C 而不是 C 并且它们具有相同的类型 为什么不直接将 x 设为对 v 0 的引用 将 y
  • Control.FindForm 和 ContainerControl.ParentForm 有什么区别

    我想知道两者之间是否有任何功能 或其他 差异Control FindForm and ContainerControl ParentForm 我一直在使用 ParentForm创建我自己的用户控件时 但有什么原因吗 FindForm会是一个
  • C# 3.0 中自动属性和公共字段的区别

    我无法理解为什么 C 3 0 中存在自动实现的属性语言功能 当你说的时候有什么区别 public string FirstName than public string FirstName get set 因为它们在生成的 IL 代码 和机
  • 是否可以编写一个在另一个 Windows 应用程序中选择文本时收到通知的 Windows 应用程序?

    我很好奇是否可以编写一个程序来监视我的文本选择 一种可能的用途是编写一个与编辑器 IDE 无关的代码格式化程序 应用程序 服务 P 启动并以某种方式挂接到窗口中 以便在任何窗口中选择文本时收到通知 启动其他一些应用程序 A 用户选择 A 中
  • 如何使用完全空的类型使 Activator.CreateInstance 运行速度减慢约 20 倍

    Given NET 程序集命名expression host NET 程序集命名CreateInstanceTest CreateInstanceTest 在其配置文件中启用 NetFx40 LegacySecurityPolicy exp
  • 替换全局热键

    我有一个位于托盘中的应用程序 我想定义多个热键来触发我的程序中的事件 我从 AaronLS 在这个问题中的出色回答中找到了灵感 使用C 设置全局热键 https stackoverflow com a 27309185 3064934 如果
  • C#:如何处理乱序 TCP 数据包?

    请有人解释一下如何处理乱序数据包 我使用原始套接字来捕获数据包 并在数据包到来时解析它们 但其中一些数据包的顺序错误 例如 ID 标志 16390 PSH ACK 16535 PSH ACK 16638 确认 16640 PSH ACK 1

随机推荐

  • Java滑动JPanels

    我有一个显示各种按钮的菜单 我可以让按钮在单击时调用它们各自的 JPanel 问题是我想让 Jpanel 在调用时滑入 而不是立即弹出 我尝试使用补间引擎 作为 Java 初学者 我发现它真的让人不知所措 所以我决定使用定时动画 我能够使顶
  • Kafka Streams如何获取kafka headers

    我有下面的卡夫卡流代码 public class KafkaStreamHandler implements Processor
  • Rails ActiveRecord 创建或查找

    我正在开发 Rails 4 应用程序 在我的 api 的 post 方法中 我想根据用户尝试创建的内容查找记录 如果它不存在 则创建它 如果它确实更新它的参数有 我编写了一些实际执行此操作的代码 但执行起来需要一些时间 有没有其他方法可以用
  • 从 SSRS 2005 (VB.NET) 中的字符串中去除 HTML

    my SSRS数据集返回一个 HTML 字段 例如 b blah blah b i blah i 如何去除所有 HTML 标签 必须完成inline VB NET 更改表中的数据不是一种选择 找到解决方案 System Text Regul
  • 调整背景图像大小以适合

    我试图使背景图像尽可能专业 所以我认为最好根据浏览器的大小或分辨率调整它的大小 不确定通常使用什么 但我认为浏览器大小在这里有意义 这个想法是 如果查看器屏幕较小 则背景图像会变小 并且随着屏幕变大 图像会扩展以适合其最大尺寸 我会根据需要
  • Phylo BioPython 构建树木

    I trying to build a tree with BioPython Phylo module What I ve done so far is this image 每个名称都有一个四位数字 后跟 和一个数字 该数字指的是该序列
  • 动态更改选项卡文本标题

    我在 viewpager 下有一个带有四个选项卡的选项卡 我想在滑动选项卡时更改文本标题 我的问题是我无法分别处理选项卡 例如四个选项卡标题是 1 2 3 4 当我滑动时 它会显示为 1 9 3 4 或 1 2 9 4 但在我的例子中是 7
  • 从 aov 中提取 p 值

    我正在寻找从 R 中的方差分析生成的 p 值 这是我正在运行的 test lt aov asq 9 asq 187 summary test Yields Df Sum Sq Mean Sq F value Pr gt F asq 187
  • 如何避免在番石榴中延迟应用Lists.transform?

    Map
  • 使用命令输出中引用的条目在 Bash 中创建数组

    我在从标准输出形成 bash 数组时遇到问题 我把它归结为这个最小的例子 a echo 1 2 3 foo bar echo a 0 1 echo a 1 2 echo a 2 3 echo a 3 foo echo a 4 bar 我相信
  • 在 Julia 中检索 RNG 种子

    在 Julia 中 全局 RNG 的种子可以设置为 srand SEED 我如何检索全局 RNG 的种子或当前状态 例如稍后再来一次 目标是在任何给定时间点获取 RNG 的状态 并在不同的会话中重新创建它 而无需知道初始种子或同时发生的对
  • 关于linux设备驱动中的register_chrdev_region()的问题

    我正在学习如何注册内核模块register chrdev region dev t from unsigned count const char name 我注意到无论有没有这个函数 我的内核模块都按预期工作 我用于测试的代码 first
  • 如何使用 IIS 7.5 更改可以在表单中发布的字段数量?

    我们的网络应用程序的管理部分中的某些表单遇到了问题 有少数表单包含大量字段 范围可以从一个输入字段到数百个 我们发现 随着这些表单的增长 在发布表单时 服务器会抛出 500 个错误 经过测试 我发现服务器可以处理包含 100 个字段的表单
  • 单个单元格的计数器增量

    这篇文章源于我的问题将单元定义扩展到单元框架标签 我一直在玩CounterIncrements我没有得到我所期望的 正如西蒙在对我提到的帖子的回答中所做的那样 我们首先生产一个计数器 CellPrint Cell Setting the c
  • 使用 CASE WHEN 在 postgresql 中创建数据透视表的正确方法

    我正在尝试在 postgresql 中创建一个数据透视表类型视图 并且已经快到了 这是基本查询 select acc2tax node acc tax node name tax node rank from tax node acc2ta
  • 如何让 Valgrind 调试器单步执行程序

    早上好 我正在尝试使用 Valgrind 调试器单步调试程序 我的 valgrind 命令行是valgrind tool memcheck leak check full db enable yes MatchUpAcurate exe 我
  • 防止控制台应用程序在未从现有终端调用时关闭?

    这类问题有很多变体 然而 我特别寻求一种方法来防止 Python 中的控制台应用程序在未从终端 或其他控制台 因为它可能在 Windows 上调用 调用时关闭 可能发生这种情况的一个示例是双击 py来自 Windows 资源管理器的文件 通
  • 使用实体框架的 System.OutOfMemoryException?

    我正在尝试使用实体框架保存数十万条记录 保存数十万条记录后 我收到以下错误 系统内存不足异常 My code foreach BibContent objbibcontents in lstBibContent db BibContents
  • 通过 Python3 使用 Selenium 和 WebDriver 切换选项卡时出现“NoSuchWindowException:没有这样的窗口:窗口已关闭”

    我有一个表单 当我单击它时会在新选项卡中打开 当我尝试导航到该新选项卡时 我不断收到 NoSuchWindowException 代码非常简单 myframe 是新选项卡中的框架 信息最终将插入其中 我应该等待其他事情吗 from sele
  • 使用 C# 设置 CPU 的关联性

    我已经用 C 创建了一个窗口应用程序 现在我想设置该应用程序的 CPU 亲和力 我可能有 2 个处理器 4 个处理器 8 个处理器或可能超过 8 个处理器 我想使用接口的输入来设置 cpu 关联性 我怎样才能做到这一点 如何使用Enviro