threadpool相关内容

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

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

基于编号的线程配置.CPU 核数

场景:我有一个示例应用程序,我有 3 个不同的系统配置 - - 2 核处理器,2 GB RAM,60 GB HHD,- 4 核处理器,4 GB RAM,80 GB HHD,- 8 核处理器,8 GB RAM,120 GB HHD 为了有效地利用我的应用程序的 H/W 功能,我希望配置 no.应用程序级别的线程数.但是,我希望只有在彻底了解系统功能后才能这样做. 是否有某种方法(系统/模式 ..
发布时间:2021-11-26 22:35:44 Java开发

TaskCreationOptions.LongRunning 选项和 ThreadPool

TPL 使用任务调度器来协调任务.根据官方文档,默认任务调度器使用线程池,但如果TaskCreationOptions.LongRunning 选项,然后它将为该任务(A)创建一个专用线程. 问题:截至目前,Visual Studio 2010 的 MSDN 文档尚未准备好,当前在线 MSDN 尚未最终确定;有谁知道(A)是对还是错? 解决方案 是的,LongRunning 强制在池 ..
发布时间:2021-11-26 10:40:11 C#/.NET

ExecutorService 的命名线程和线程池

假设我有一个使用 Executor 框架的应用程序 Executors.newSingleThreadExecutor().submit(new Runnable(){@覆盖公共无效运行(){//做东西}} 当我在调试器中运行此应用程序时,会创建一个具有以下(默认)名称的线程:Thread[pool-1-thread-1].如您所见,这并不是非常有用,而且据我所知,Executor 框架没有提 ..

ThreadPool 与专用线程 - 何时更喜欢哪个

当我应该停止使用 ThreadPool 并使用专用的 Thread 代替?我想对于长时间运行的工作,最好使用专用的 Thread,因为它不会从 ThreadPool 中窃取一个.对于较短的工作,最好使用 ThreadPool,因为创建线程和线程本身会消耗大量资源. 但是魔法屏障在哪里?我如何决定使用哪种方法? 在简单的应用程序中,它可能没有那么重要.但我正在处理一个自定义的基于 .NE ..
发布时间:2021-11-17 02:03:50 C#/.NET

线程与线程池

使用新线程和使用线程池中的线程有什么区别?有什么性能优势,为什么我应该考虑使用池中的线程而不是我明确创建的线程?我在这里专门考虑 .NET,但一般示例都很好. 解决方案 线程池将为频繁且相对较短的操作提供好处 重用已经创建的线程而不是创建新线程(一个昂贵的过程) 当对新工作项的请求激增时限制线程创建的速度(我相信这仅在 .NET 3.5 中) 如果您将 100 个线程池任务排 ..
发布时间:2021-11-17 01:39:59 C#/.NET

.Net 如何创建跨进程的所有 AppDomain 共享的自定义 ThreadPool?

我制作了一个针对我的特定需求进行了优化的自定义线程池.但是,当进程中有多个 AppDomains 时,CLR ThreadPool 能够在所有 AppDomains 之间共享,我希望能够重现这种行为. 这可以使用 MarshalByRefObject 和 Remoting 来创建分布式线程池,但我担心这会增加不必要的开销,因为自定义线程池的主要目标是性能. 另一个理论上的解决方案是使用 ..
发布时间:2021-11-16 19:10:50 C#/.NET

在python中同时调用一个api

我需要与 api 交谈以获取有关团队的信息.每个团队都有一个唯一的ID.我用那个 id 调用 api,我得到了每个团队的球员列表(字典列表).播放器的一个键是另一个 ID,我可以用它来获取有关该播放器的更多信息.我可以捆绑所有这些 player_id 并调用 api 以在一个 api 调用中获取每个玩家的所有附加信息. 我的问题是:我预计团队的数量会增长,可能会非常大.此外,每支球队的球员人 ..
发布时间:2021-11-15 03:58:05 Python

apache restlet 连接器过载

我在 from("restlet:http/myLink") 子句的骆驼路线中使用 restlet.当用户的请求每秒超过 10 个时,我开始收到错误处理请求,例如“org.restlet.engine.connector.Controller run信息:检测到连接器过载.停止接受新作品" 我认为,该错误是由线程数、请求查询的大小或数量或类似原因引起的.我尝试将 spring 配置中的 ma ..
发布时间:2021-11-11 23:16:25 其他开发

.NET 是否使用并发或并行或两者兼而有之?

我知道并行和并发之间的区别.并发意味着处理器以非常快的速度在线程之间切换,这使得它看起来像是并行运行,因此即使使用单核处理器,您也可以同时实现事物.而并行意味着每个线程都运行在不同的内核上. .NET 使用并行还是并发?什么是流量?cpu 是否检查线程数是否多于内核数,如果是这种情况,是否会导致内核具有多个线程,从而使程序并行和并发? 如果我使用任务并行库会发生什么?这个名字在里面是平 ..
发布时间:2021-09-07 18:36:03 C#/.NET

Spring - 调度和池化不同状态的可运行对象(每个可运行实例具有不同的状态)

我不知道用什么来调度和汇集不同状态的可运行对象(每个可运行实例具有不同的状态).我可以将 ScheduledExecutorFactoryBean 与 MethodInvokingRunnable 一起使用来提供参数.但是看看关键的 ScheduledExecutorFactoryBean 方法,它的设计方式是所有任务都应该从头开始. protected void registerTasks( ..
发布时间:2021-09-07 18:35:59 其他开发

如何在 Spring Boot 应用程序中覆盖线程池

我正在编写以下代码来覆盖线程池.但它不能正常工作.在 Spring Boot 应用程序启动中设置覆盖线程池的正确方法是什么.请注意,我的代码中无法控制 Server 实例,因此实例化 Server 不是满足我需要的解决方案. @Bean公共 EmbeddedServletContainerCustomizer getContainerCustomizer() {return (configur ..
发布时间:2021-09-07 18:35:56 其他开发

创建在后台执行特定任务的工作线程

根据我的项目, 已通过查询从数据库中获取数据,结果集上有一个迭代器,并且数据已经不断地添加到这个结果集中. 通过迭代 Iterator 对象,结果被添加到 ArrayList.一旦我们获得了所有条目(超过 200000 个),然后将其写入文件. 但是由于它使用了更多的 jvm 堆空间,我需要使用一个在后台运行并将数据写入文件的工作线程. 由于我是多线程的新手,我想通过创建 ..
发布时间:2021-09-07 18:35:53 Java开发

当我重新启动 twitterStream 时,为什么 java.util.concurrent.RejectedExecutionException 使用 Twitter4J 对推文进行采样?

在下面的 java 应用程序中,我使用 TwitterStream 使用示例函数收集推文.我需要在用户需要时启动和停止流,但出现以下异常: java.util.concurrent.RejectedExecutionException:任务 twitter4j.StatusStreamBase$1@74e75335 从 java.util.concurrent.ThreadPoolExecuto ..
发布时间:2021-09-07 18:35:50 Java开发

不稳定的应用程序使用 SqlDependency.几种状态和错误

我有一个使用 SqlDependency 在分离的线程池中运行的 Windows 应用程序,该应用程序代表一个日志监视器 UI,获取添加到数据库特定表中的最新行并在 DataGridView 中查看它.您可以从此LINK查看应用程序源代码,或按照此脚本操作. const string tableName = "OutgoingLog";const string statusMessage = ..
发布时间:2021-09-07 18:35:47 其他开发