草庐IT

C++11多线程—thread

全部标签

java - 为什么我的线程不能使用 Java ExecutorService 并行运行?

publicclassTest{privateExecutorServiceexecutor=Executors.newFixedThreadPool(50);publicvoidstartTenThreads(){for(inti=0;i我希望这些线程并行运行,但输出显示它不是并行运行,而是顺序运行:Thread1startingThread1finishedThread2startingThread2finishedThread3startingThread3finishedThread4startingThread4finishedThread5startingThread5fi

java - 仅使用 ExecutorService 中的线程子集

在一个典型的JAVA应用中,配置一个全局的ExecutorService来管理一个全局的线程池。假设我配置了一个包含100个线程的固定线程池:ExecutorServicethreadPool=Executors.newFixedThreadPool(100);现在假设我有一个包含1000个文件的列表要上传到服务器,对于每个上传我创建一个可调用函数来处理这个文件的上传。ListuploadTasks=newArrayList();//Fillthelistwith1000uploadtasks如何将并发上传的最大数量限制为5个?如果我这样做threadPool.invokeAll(up

java - 在 JVM 中,Thread 对象是直接绑定(bind)到 CPU 内核,还是两者之间有一个 Mapper?

我想知道的是(我找到的文档对弄清楚它不是很有帮助),当在其上执行的线程将控制权转移到硬件设备(磁盘Controller,磁盘Controller,网络I/O,...)来做一些CPU/核心无法帮助的事情。该核心是否可用于执行其他线程,还是只是停止并等待(即使有其他线程有CPU工作可用于调度)?“与核心一样多的线程”这一经常给出的建议似乎暗示了后者。 最佳答案 这是Java无法控制的。调度由操作系统完成,因此不在JVM的范围内。内核很可能在等待某些IO完成时被操作系统回收。“每个核心/处理器一个线程”的简单建议适用于CPU密集型操作。如

java - 使用 jdbc 与 oracle 11.2 通信时 ResultSet.next() 挂起

我们有一个使用jdbc与oracle11.2通信的java应用程序。我们正在使用oracle-jdbc-7.jarCreated-By:20.12-b01(SunMicrosystemsInc.)Implementation-Vendor:OracleCorporationImplementation-Title:JDBCImplementation-Version:12.1.0.1.0我们也在使用Statement.setQueryTimeout()但是,每隔几天,与oracle通信的线程就会在执行ResultSet.next()时挂起。代码如下所示:PreparedStatemen

java - JMSException InterruptedIOException - 生产者线程被中断

我收到JMS异常,队列似乎没有退出或没有完成任务。消息是异步的,大部分时间都可以正常工作,但有时会出现异常。似乎听众一直在听另一边,但在生产者那边得到了这个异常。javax.jms.JMSException:java.io.InterruptedIOExceptionatorg.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:62)atorg.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:

java - 线程状态阻塞和等待之间的区别

这个问题在这里已经有了答案:DifferencebetweenWAITandBLOCKEDthreadstates(6个答案)关闭4年前。我已通过以下帖子阅读了答案:DifferencebetweenWAITandBLOCKEDthreadstates但是,我还是很疑惑。我想知道在JVM级别上有什么区别,在CPU级别上有什么区别。这两个是否都有“线程上下文切换”?,在多线程环境中哪个更快?

java - 了解 REST API——什么是 Context 和 @Context?

我最近学习了restfulweb服务教程,但无法理解什么是context。有人可以解释它是什么以及@Context的作用吗? 最佳答案 JAX-RS提供了@Context注解来注入(inject)12个与HTTP请求上下文相关的对象实例,它们是:SecurityContext-当前HTTP请求的安全上下文实例Request-用于设置前置条件请求处理应用程序、配置和提供程序->提供对JAX-RS应用程序、配置和提供程序实例的访问权限ResourceContext-资源关联类实例ServletConfig-ServletConfig实例

java - 从具有多个线程的 SQS 队列中读取

注意:这是来自here的帖子的转贴.大家好,我有一个处理单个SQS队列中的消息的进程。队列中可以有很多消息,每条消息都会导致数据库命中。因此,我想给这个队列的读者发帖。每个线程的基本代码是:publicvoidrun(){while(true){ReceiveMessageRequestrmr=newReceiveMessageRequest(queueUrl).withMaxNumberOfMessages(10).withWaitTimeSeconds(3);Listmessages=sqsClient.receiveMessage(rmr).getMessages();//pro

java - Thread Busy apache tomcat解压数据

我已经在tomcat中部署了应用程序,并且有很多线程很忙,没有像这样释放超过700个线程。我捕获了文件位于ufile.io/8zz1t上的thead转储,我使用fastthread.io阅读。你能检查一下你是否看到问题吗,我看到充气机有消耗cpu的线程。S188063346ms0KB0KB10.162.3.36172.30.100.163POST/ChiperService/rest/cs/DescifrarHTTP/1.1S280064346ms0KB0KB10.162.3.36172.30.100.163POST/ChiperService/rest/cs/DescifrarHTT

java - JDK 11 和 JavaFX 11 : build for ARM (Tinker Board) not running (hash mismatch)

我有一个JavaFX8项目,它是在Windows10上使用NetBeans8.2开发的。我从中构建的JAR我在AsusTinkerBoard上运行。对于JDK11和JavaFX11,我想利用一些新功能并希望获得一些性能提升。在教程的帮助下安装NetBeans10之后:https://openjfx.io/openjfx-docs/#introduction(JavaFX和NetBeans>非模块化与Maven部分),我已成功移植并可以在我的Windows系统上运行该应用程序。通过IDE或使用命令提示符:java--module-path%PATH_TO_FX%--add-modules