草庐IT

sigev_notify_thread_id

全部标签

java - 了解 wait() 和 notify() 的必要性

这个问题在这里已经有了答案:DifferencebetweenSynchronizedblockwithwait/notifyandwithoutthem?(6个答案)关闭6年前。我试图理解在访问共享资源或依赖于它们的状态时使用wait()和notify()实现线程的必​​要性。我看到这个想法是监视对象并等待它们的可用性并在使用后释放它们以使它们可用于其他线程/方法,但为什么这些方法是必需的而不是仅仅将相关对象声明为staticvolatile以便其他线程在不调用这些方法的情况下了解状态的变化?例如在一家餐厅,有2位厨师。其中一位厨师是一位好厨师(更好的cooking质量,..)并带有

java - 如何选择一个Kafka transaction.id

我想知道我能否在理解Kafka中的交易方面获得帮助,尤其是如何使用transaction.id。这里是上下文:我的Kafka应用程序遵循以下模式:使用来自输入主题的消息,进行处理,然后发布到输出主题。我不使用KafkaStreamsAPI。我在一个消费者组中有多个消费者,每个消费者都在自己的轮询线程中。有一个带有工作线程的线程池,该线程用于执行消息处理并将其发布到输出主题。目前,每个线程都有自己的生产者实例。我正在使用已发布的事务API,以确保消耗偏移量的更新和对输出主题的发布原子地进行到目前为止,我的假设包括:如果我的进程在中间事务中崩溃,那么该事务中的任何内容都不会发布,也不会消耗

java - GWT、Google App Engine、TimerTask 或 ServiceImpl 中的 Thread 抛出异常

我正在使用GWT和GoogleAppEngine。我有一系列记录,我想每30分钟更新一次。在ServiceImpl中,我有以下代码:newTimer().schedule(newTimerTask(){@Overridepublicvoidrun(){try{Thread.sleep(30000);}catch(InterruptedExceptione){e.printStackTrace();}result=updateFeeds();}},30000,Long.MAX_VALUE);当我运行应用程序时,当我得到:com.google.gwt.user.server.rpc.Une

java - 多 :Threading - Is this the right approach?

专家-在以下情况下我需要一些建议。我有一个包含任务列表的配置文件。每个任务可以有零个、一个或多个依赖项。我想并行执行这些任务[现在它们正在按顺序执行]想法是有一个主程序来读取配置文件并加载所有任务。读取单个任务并将其交给将执行任务并在Future中返回结果的执行程序[callable]。当任务被提交给执行者(线程)时,它将监视其依赖项是否首先完成并执行自己的任务。这是正确的方法吗?使用Java1.5功能还有其他更好的方法吗? 最佳答案 听起来不错,但要注意线程饥饿死锁。基本上,不要使用有界线程池。这里有一个例子可以说明这个问题。ht

java - 从多个线程调用时 Thread.sleep() 如何工作

sleep()是Thread类的静态方法。从多个线程调用时它是如何工作的。以及它如何确定当前的执行线程。?或者可能是一个更通用的问题是如何从不同的线程调用静态方法?不会有任何并发​​问题吗? 最佳答案 howdoesitfigureoutthecurrentthreadofexecution?没必要。它只是调用操作系统,操作系统总是让调用它的线程hibernate。 关于java-从多个线程调用时Thread.sleep()如何工作,我们在StackOverflow上找到一个类似的问题:

java - App 引擎标识符。 key 与 ID

为了在GoogleAppEngine中识别我的JDO对象,我使用了Key类型。它工作正常,但是当我需要通过url传递它时,它会变得有点长。例如:http://mysite.com/user/aghtaWx1LWFwcHIZCxIGTXlVc2VyGAMMCxIHTXlJbWFnZRgHDA在我的管理查看器中查看我的实体时,我可以看到数据存储还为我的实体对象设置了一个“id”,它似乎是一个递增的数值,与Key字符串相比非常短。我可以用它来获取关于我的对象的信息吗?我该怎么做呢?我尝试将getObjectbyId()与id而不是key一起使用……它不起作用。有什么想法吗?

Java - 主方法中的 Thread.sleep

我正在审查Java代码,它本质上是一个定期移动/读取/解析一些文件并将数据输出到数据库的重复过程。重复部分(大致)如下完成:publicclassCollectorMain{publicstaticbooleansignalRecieved=false;publicstaticvoidmain(String[]args){Runtime.getRuntime().addShutdownHook(newThread(){publicvoidrun(){shutdown();}});while(!signalRecieved){Collector.execute();try{Thread.

java - Spring Kafka - 如何使用组 ID 将偏移量重置为最新?

我目前正在使用SpringIntegrationKafka做实时统计。但是,组名使Kafka搜索监听器未读取的所有先前值。@Value("${kafka.consumer.group.id}")privateStringconsumerGroupId;@BeanpublicConsumerFactoryconsumerFactory(){returnnewDefaultKafkaConsumerFactory(getDefaultProperties());}publicMapgetDefaultProperties(){Mapproperties=newHashMap();prope

java - 并行化 : What causes Java threads to block other than synchronization & I/O?

简短版本在标题中。长版:我正在研究一个使用Java进行科学优化的程序。程序的工作负载可以分为并行和串行阶段——并行阶段意味着正在执行高度并行化的工作。为了加速程序(它运行数小时/数天),我创建了多个线程,这些线程的数量等于我正在使用的机器上的CPU核心数量——通常是4或8个——并在它们之间分配工作。然后我启动这些线程并加入()它们,然后再进入串行阶段。到目前为止一切顺利。困扰我的是并行阶段的CPU利用率和加速比“理论最大值”还差得很远——例如如果我有4个内核,我希望看到350-400%的“利用率”(如top所报告),但它在180到310之间反弹。仅使用一个线程,我获得100%的CPU利

java - 通过扩展 Thread 类或实现 Runnable 创建线程哪个更可取?

这个问题在这里已经有了答案:"implementsRunnable"vs"extendsThread"inJava(43个回答)关闭9年前。我想知道通过扩展线程类或通过实现Runnable接口(interface)创建线程哪个更可取。为什么?谢谢..