每个 CPU 的线程实际限制是多少?

2024-01-09

我一直在玩弄线程,试图将一些限制推向极致——为了我自己的娱乐。我知道线程池默认为 25 个线程,并且可以增加到 1000 个(根据 MSDN)。但是,每个 CPU 核心的线程数的实际限制是什么呢?在某些时候,上下文切换会比线程保存造成更多的瓶颈。有人有任何涉及此的最佳实践吗?我们是在谈论 100、200、500 吗?这取决于线程正在做什么吗?除了框架规定的架构之外,是什么决定了每个 CPU 核心有多少个线程以最佳方式运行?


当然,这完全取决于线程正在做什么。如果它们受 CPU 限制(例如处于无限循环中),那么每个核心一个线程就足以使 CPU 饱和;超过这个数量(并且您已经拥有更多,来自后台进程等),您将开始争用。

在另一个极端,如果线程不符合运行条件(例如,在某些同步对象上被阻止),那么线程数量的限制将由 CPU 以外的因素决定(堆栈内存、操作系统内部限制、 ETC)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

每个 CPU 的线程实际限制是多少? 的相关文章

  • 运行命令行进程并在该进程仍在运行时获取输出?

    如何运行命令行进程并在该进程仍在运行时获取输出 我的意思是使用自己的进度条运行 CLI 进程 可执行文件本身需要很长时间才能完成操作 所以我想从自己的进程中获取进度信息来显示我的应用程序中的进度 否则我不这样做在进程完成之前没有任何信息来显
  • ctypes.ArgumentError:不知道如何转换参数

    我在C库中定义了一个函数 如下所示 int Test char str1 int id1 char str2 float val float ls 我想在Python中使用它 所以我编写了以下Python代码 str1 a str2 b i
  • 类型定义存在于两个库中

    我正在使用 NET 4 5 构建 ASP NET Web 窗体网站 错误 The type System ComponentModel DataAnnotations Schema ForeignKeyAttribute exists in
  • 我可以举一个使用 runOnUiThread 显示 toast 的示例吗?

    我搜索了很多地方 但找不到 runOnUiThread 实现的完整工作示例 我尝试了很多 但出现了很多错误 我只想显示线程中的吐司 这是最终的完整代码 感谢所有回复的人 import android app Activity import
  • 可以轻易移动,但不可轻易复制

    是否可以创建类类型 即 普通移动构造 但不是普通复制构造 但仍然可复制构造 普通复制构造 但不是普通移动构造 但仍然可移动构造 可以简单地复制分配 但不能简单地移动分配 但仍然可以移动分配 可以简单地移动分配 但不能简单地复制分配 但仍然可
  • 在 WiX 中轻量运行时,DefaultDir 无效

    我只是想做一个安装程序 将一些文件移动到程序文件中 设置开始菜单链接 并出现在要卸载的添加 删除程序中 目前我很乐意点击开始菜单链接 因为这看起来相对简单 需要注意的是 我特别希望可以通过脚本构建它without任何类型的全局安装 这意味着
  • 将控制台输入和输出重定向到文本框

    您好 提前致谢 我正在尝试 非常努力 将控制台输入和输出重定向到文本框 到目前为止 输出工作正常 但问题在于输入 例如 我无法执行一个简单的程序来执行以下操作 Console WriteLine 请输入您的姓名 字符串名称 Console
  • OpenCV:处理每一帧

    我想使用 OpenCV 编写一个跨平台应用程序进行视频捕获 在所有示例中 我发现来自相机的帧是使用抓取功能进行处理并等待一段时间 我想处理序列中的每一帧 我想定义自己的回调函数 每次当一个新帧准备好处理时都会执行该函数 例如直播对于 Win
  • Parallel ForEach 的本地初始化如何工作?

    我不确定 Parallel ForEach 中本地 init 函数的使用 如 msdn 文章中所述 http msdn microsoft com en us library dd997393 aspx http msdn microsof
  • 创建 PING 程序时限制 ICMP 回显答复

    我正在编写一个多线程 ping 程序 我在每个线程 针对每个 IP 上创建了原始套接字 并使用 sendto 向每个线程发送了 ICMP Echo 请求 然后在每个线程中执行了 receivevfrom 我正在从各种套接字中的 IP 获取消
  • 在 4.x 内核上的 64 位内存中查找系统调用表

    我正在尝试编写一个简单的内核模块来查找 Linux 中的 sys call table 但遇到了一些麻烦 我在这里找到了 32 位 Linux 的基本指南 https memset wordpress com 2011 03 18 sysc
  • BlueZ D-Bus C,应用 BLE

    我正在尝试编写一个应用程序来搜索附近的蓝牙设备并与它们通信 我的应用程序将用 C 语言编写 并打算在 Linux 下工作 是否有通过 C 中的 D Bus 使用 BlueZ 的教程或示例 此应用程序的目的是从 BLE 中的文件发送数据 你能
  • 使用 c++20 范围删除最后一个元素的最佳方法是什么

    有没有比反转两次更好的方法来使用 c 20 范围删除容器中的最后一个元素 include
  • 我的代码线程不安全吗?

    我编写了代码来理解 CyclicBarrier 我的应用程序模拟选举 每轮选出得票少的候选人 该候选人从竞争中淘汰以获得胜利 source class ElectoralCommission public volatile boolean
  • 为什么 istream/ostream 慢

    于 50 40http channel9 msdn com Events GoingNative 2013 Writing Quick Code in Cpp Quickly http channel9 msdn com Events Go
  • 所有区域的启用保护模式必须设置为相同的值(启用或禁用)

    我正在尝试使用Selenium Internet Explorer驱动程序 但当我尝试实例化它时它崩溃了 TestInitialize public void TestInitialise ieDriver new InternetExpl
  • Xamarin Forms:System.Reflection.TargetInitationException:调用目标已引发异常

    我正在为这个问题苦苦挣扎 我只是创建了一个简单的跨平台页面 这里是 XAML 代码
  • wpf中的图像问题(图像不显示)

    我不明白为什么我无法在 WPF 中显示图像 也许我不小心修改了我的资源文件夹 这就是我没有显示的原因 所以我创建了一个新的 wpf 应用程序 我有这个 当我运行该程序时 我的图片显示为 为什么当我尝试在程序中执行相同的操作时 图像没有显示
  • 在 C++11 中设置 std::thread 优先级的可移植方法

    在后 C 11 世界中设置 std thread 实例的优先级的正确方法是什么 是否有一种至少在 Windows 和 POSIX Linux 环境中有效的可移植方法 或者是获取句柄并使用可用于特定操作系统的任何本机调用的问题 无法通过 C
  • Python 线程与 Linux 中的多处理

    基于此question https stackoverflow com questions 807506 threads vs processes in linux我假设创建新流程应该几乎和创造新线程在Linux中 然而 很少的测试显示出截

随机推荐

  • 如何处理 jQuery UI Selectmenu 更改事件

    我使用 jquery ui 选择菜单自定义渲染选项 http jqueryui com selectmenu custom render 我该如何处理change event i try filesA on change function
  • 如何在 ng-repeat (AngularJS) 中绑定多个 JSON 文件?

    我有多个 JSON 文件 主要 json MainRegister name Name1 url url1 json name Name2 url url2 json url1 json SubInformation description
  • 使用 scipy.spatial 的数据类型问题

    我想使用 scipy spatial 的 KDTree 来查找二维数组中的最近邻对 本质上是一个列表列表 其中嵌套列表的维度为 2 我生成列表列表 将其通过管道传输到 numpy 的数组中 然后创建 KDTree 实例 然而 每当我尝试对其
  • 使用 Mockito 模拟 Jersey 客户端

    您好 我正在使用 JUnit 和 Mockito 测试 Jersey Client 1 19 版本 我正在努力获取或阅读该实体 我不知道如何从那里继续 而且我也收到 IllegalStateException 下面是我用来为客户端响应创建模
  • 如何在AWS上自动部署带有子模块的git存储库?

    我的 git 存储库中有一个子模块 我的目录结构如下 app folder1 folder2 submodule 5855 我已使用自动部署服务在 AWS 上部署了我的代码 现在 在服务器上 我的父目录中有代码 但子模块目录为空 Q1 如何
  • 量角器 - 查找所有元素和找到的元素的循环长度,然后单击按钮

    所以我一直在试图弄清楚如何根据 find All 元素的数量来单击按钮 x 次 这意味着如果同一个类名找到 3 个元素 那么我们循环 3 次 这应该单击按钮 3 次 我做了这样的事情 新更新 请查看底部的编辑帖子 通常情况下element
  • StrictMode java.lang.Throwable:检测到未标记的套接字

    启用 StrictMode 后 我刚刚开始收到此异常 java lang Throwable 检测到未标记的套接字 使用 TrafficStats setThreadSocketTag 跟踪所有网络使用情况 有几种方法可以处理此异常 首先
  • 使用细粒度锁的代码示例(JCR Jackrabbit?)

    我正在进行一项学术研究 试图开发一种编程工具 帮助实现细粒度锁定功能 用于维护树状数据结构的并发程序 例如 程序员可能会编写一些接收树根节点并修改树的函数 通过遍历某些路径并添加 删除节点 该工具将帮助他找到代码中节点应该被锁定的位置 以及
  • PDO-bindParam 不起作用

    我正在创建一个 PDO 类以在我的项目中使用 但由于我是新手 所以我无法将参数绑定到准备好的 sql 语句 而不会出现任何错误 这是执行此操作的函数 bindParam public static function bind get fun
  • java.net.URI.relativize 不适用于 JAR URI

    我有两个 URI 对象 一个指向 JAR 文件中的文件夹 另一个指向同一 JAR 文件中的文件 该文件位于第一个 URI 指定的目录的子文件夹中 我喜欢创建一个相对 URI 因此生成的 URI 仅包含 JAR 中文件的相对路径 文件夹URI
  • IIS 上的 Python:如何?

    我有 PHP dotNet 背景 并且对 Python 着迷 我想逐步将功能从 PHP 转置为 Python 并排运行各个部分 由于应用程序规模庞大 这一过渡可能需要 2 年时间 因此我必须使用 IIS 我有 15 年的 Web 编程背景
  • 使用 AFIncrementalStore 和 NSFetchedResultsController 出现死锁

    这几天我一直在苦苦思索这个问题 但我一生都无法弄清楚到底发生了什么 我对核心数据很陌生 但我对它足够了解 可以避免死锁情况 然而 对于这个项目 我决定尝试合并 AFIncrementalStore 我构建了一个示例项目来测试 APIClie
  • 使用 flex 将 Python 多行字符串与转义字符匹配

    我想知道如何将 python 多行注释与 flex 相匹配 我遇到了一些麻烦 以下工作正常Regexr https regexr com 但不被flex识别 我不知道如何修复它 1 2 以前 我使用过 3 0 2 3 它可以检测以下评论 A
  • Python dryscrape 抓取带有 cookies 的页面

    我想从网站获取一些数据 这需要登录 我通过以下方式登录requests url http example com response requests get url email email protected cdn cgi l email
  • 从 github 项目分发二进制文件的最佳实践是什么? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 从 github 项目分发二进制文件的最佳实践是什么 我能想到 在项目中创建一个 bin 文件夹 在其中保存二进制文件的副本 但是 github 旨在
  • iPhone 内存压力导致 iOS 钥匙串数据丢失?

    我正在 iPhone 5s 上通过调试器运行 iOS 应用程序 我使用钥匙串来存储密码 我使用 Apple 的 KeychainItemWrapper 示例来存储和检索我的钥匙串项目 大约 99 99 的情况下 钥匙串检索都能完美运行 但是
  • AWS Terraform:通过匹配标签名称中的子字符串来过滤特定子网

    我有 6 个子网 我想从中过滤 3 个匹配子字符串的子网internal并在 rds 中使用 标签名称具有内部单词 并且希望根据该内部单词进行过滤 有人可以帮我吗 data aws vpc vpc nonprod sctransportat
  • 使用 jQuery .appendTo 后执行 CSS3 动画

    我想用 appendTo 修改元素的 DOM 位置 完成后 我需要使用 CSS3 为元素设置动画 该元素不会产生动画 而是捕捉到新的 CSS 样式 JavaScript run click function imageOriginal ap
  • xcode 构建错误:项目不包含方案

    我正在开发一个离子应用程序 但是当我尝试构建它时 它给了我以下错误 xcodebuild error The project named SnapHome does not contain a scheme named SnapHome T
  • 每个 CPU 的线程实际限制是多少?

    我一直在玩弄线程 试图将一些限制推向极致 为了我自己的娱乐 我知道线程池默认为 25 个线程 并且可以增加到 1000 个 根据 MSDN 但是 每个 CPU 核心的线程数的实际限制是什么呢 在某些时候 上下文切换会比线程保存造成更多的瓶颈