threadpool相关内容

ThreadPool.SetMinThads不会创建任何新线程

我正在尝试弄清楚ThreadPool.SetMinThreads到底会产生什么影响。 根据official documentation它写着 设置线程池在切换到管理线程创建和销毁的算法之前按需创建的最小线程数。 在我的理解中,作为一名开发人员,我应该控制如何按需旋转新线程的机制,因此它们是在空闲状态下创建和等待的,例如在我期望在特定时间加载请求的情况下。 这正是我最初认为S ..
发布时间:2022-04-08 14:01:16 C#/.NET

线程池应该如何在C中实现?

我使用的是C++编程,但我只使用pthread.h,没有Boost或C++11线程。 所以我尝试使用线程,但基于我前面的一个问题(link),这似乎不可行,因为线程在完成任务后立即终止,使用线程池实现的一个更普遍的原因是通过将这些线程重用于多个任务来减少线程创建开销。 那么,使用fork()并创建从主进程到子进程的管道是用C实现此功能的唯一其他方式吗?或者有没有办法在我不知道的线程和其父线 ..
发布时间:2022-02-26 18:34:52 C/C++开发

在高流量场景中使用 ASP.NET 中的 ThreadPool.QueueUserWorkItem

我一直认为,即使在 ASP.NET 中,将 ThreadPool 用于(假设是非关键的)短期后台任务也被认为是最佳实践,但后来我遇到了 这篇文章 似乎另有建议 - 论点是您应该离开 ThreadPool 来处理 ASP.NET相关请求. 到目前为止,我是这样处理小型异步任务的: ThreadPool.QueueUserWorkItem(s => PostLog(logEvent)) 文章 ..
发布时间:2022-01-31 11:40:20 C#/.NET

如何在 IIS 7.0 上增加线程池线程

环境:Windows Server 2008 Enterprise、IIS 7.0、ASP.NET 2.0 (CLR)、.NET 4.0 我有一个没有页面和会话的 ASP.NET 应用程序(HttpHandler).它是一个流媒体服务器.我使用两个线程来处理每个请求,因此如果有 100 个连接的客户端,则使用 200 个线程.这是一个专用服务器,服务器上没有更多应用程序. 问题是在连接 ..
发布时间:2022-01-25 00:06:36 C#/.NET

Mono ThreadPool 并发问题

我编写了一款使用 ThreadPool 进行多线程处理的软件. ThreadPool.SetMinThreads(128, 128);ThreadPool.SetMaxThreads(512, 512);for (int i = 0; i 在每个线程中,我执行阻塞网络操作(使用 http).围绕阻塞网络模型设计的软件,我无法转向非阻塞 1 线程 I/O. 它在 Windows 平台上完 ..
发布时间:2022-01-23 15:31:21 C#/.NET

使用 Netty 的 UDP 服务器中丢失了很多 UDP 请求

我用 Netty 编写了一个简单的 UDP 服务器,它只是在日志中打印出接收到的消息(帧).为此,我创建了一个简单的帧解码器解码器和一个简单的消息处理程序.我还有一个客户端可以顺序和/或并行发送多个请求. 当我将我的客户端测试器配置为顺序发送例如几百个请求时,它们之间有一个小的延迟,我用 Netty 编写的服务器可以正确接收它们.但是,当我增加客户端中的同时请求数量(例如 100 个)以及顺 ..
发布时间:2022-01-22 17:10:04 其他开发

没有队列的 ThreadPoolExecutor

我想创建一个固定大小的线程池,它不允许任何任务进入其队列.换句话说,如果线程池当前正在使用,那么传入的任务应该被彻底拒绝.基于 文档,一种方法在我看来,要做到这一点,就是创建一个拒绝接受任务的虚拟 Queue 对象.在 Java 中实现这一点的惯用方法是什么? 解决方案 你可以使用 SynchronousQueue 在您的 ThreadPoolExector 中,这是一个不包含任何对象的队 ..
发布时间:2022-01-21 12:27:14 Java开发

Java 是否有可索引的多队列线程池?

是否有这样的 Java 类: 可以通过 id 添加可执行任务,保证所有具有相同 id 的任务不会同时运行 线程数可以限制为固定数量 一个朴素的地图解决方案很容易解决(1),但很难管理(2).同样,我所知道的所有线程池类都将从单个队列中提取,这意味着 (1) 无法保证. 欢迎涉及外部库的解决方案. 解决方案 如果你没有找到开箱即用的东西,那么推出你自己的应该不难.您可以做 ..
发布时间:2022-01-21 12:04:09 Java开发

使用 ThreadPool 的正确方法是什么?

如果我对 ThreadPool 工作方式的理解是正确的,那么它的目的之一就是限制在给定时间可以创建的进程中的工作线程数.例如,如果您将 MaxThreads 设置为 5,然后调用 QueueUserWorkItem 30 次,则会向 ThreadPool 发出 30 个请求,但其中只有 5 个请求会被新线程处理,而其他 25 个请求将被添加到队列中并在之前的请求完成且现有线程可用时一次提供一个服务 ..
发布时间:2022-01-21 11:44:13 C#/.NET

Ruby:任何用于线程池的宝石?

是否有任何人可以推荐的线程池 gem? 解决方案 根据我的经验,fork/process pooling 比 Ruby 中的 readpooling 更有效(假设您在线程通信方面不需要太多).前段时间我创建了一个名为 process_pool 的 gem,它是一个非常基本的进程池,带有一个基于文件的作业队列(你可以在这里查看:http://github.com/psyho/process_ ..
发布时间:2022-01-18 18:31:38 其他开发

C# - ThreadPool QueueUserWorkItem 使用?

现在我正在使用以下代码添加排队线程.我不喜欢它.我的同事也不会,因为他们不太了解 C#.当然,我想要的只是将要在新线程中执行的方法排队. private static void doStuff(字符串参数){//做事}//调用 (a)ThreadPool.QueueUserWorkItem(a => doStuff("hello world"));//调用 (b)ThreadPool.Queue ..
发布时间:2022-01-18 12:35:52 C#/.NET

未收集 AsyncTask 导致其他 AsyncTask 无法运行

我的应用程序使用了很多 AsyncTask.毕竟它是一个网络应用程序.当我跟踪 Debug 选项卡时,我注意到每个 AsyncTask 都说在它后面运行,并且在 5 个 AsyncTasks 之后,我无法启动任何 AsyncTasks.我通过将执行程序更改为 THREAD_POOL_EXECUTOR 来修复它,它允许池化 15 个线程.但是 AsyncTasks 仍然显示为正在运行. Asy ..

如何在 python 多处理池 apply_async 中使用关键字参数

我正在尝试掌握 python 的多处理模块,特别是 Pool 的 apply_async 方法.我正在尝试使用参数和关键字参数调用函数.如果我在没有 kwargs 的情况下调用该函数,那很好,但是当我尝试添加关键字参数时,我得到:TypeError: apply_async() got an unexpected keyword argument 'arg2'下面是我正在运行的测试代码 #!/u ..
发布时间:2022-01-12 13:13:38 Python

守护进程内的Python多处理池

我针对这个问题提出了一个问题,但没有得到足够彻底的答案来解决这个问题(很可能是由于在解释我的问题时缺乏严谨性,这是我试图纠正的问题):python多处理守护进程中的僵尸进程 我正在尝试实现一个 python 守护程序,它使用一个工作池来使用 Popen 执行命令.我从 http://www.jejik.com/articles/借用了基本的守护进程2007/02/a_simple_unix_ ..
发布时间:2022-01-12 12:46:44 Python