草庐IT

​线程池

全部标签

单独的线程锁父级中的 Java JDBC 查询

我在理解这一点时遇到了一些困难。这是正在发生的事情。我正在生成一个新线程,该线程保持与Oracle数据库的JDBC连接。当我要求它连接到数据库时,父线程在调用start()方法时保持运行,但是当我要求子线程执行查询(在单独的方法上)时,父线程卡住等待子线程的完成其工作的方法。关于如何解决这个问题的任何猜测?提前致谢!publicclassMainextendsThread{publicMain(){}publicvoidmyCounter(){inti=0;DBConnectionmyConnection=null;for(;;){i++;System.out.println("tim

java - unmodifiableList 线程安全吗?

我有一个字符串列表(tagList)需要在多个线程之间共享以供读取,所以我创建了一个不可修改的版本并将其传递给线程,我不确定它是否线程安全,因为线程只读取该列表所以我想应该没问题吧?另外,当我将那个不可修改的列表传递给线程时,它是传递一个副本并由线程共享,还是创建多个副本并将一个副本传递给每个线程?这是我的代码:finalListtList=Collections.unmodifiableList(tagList);List>calls=newArrayList>();FileStatus[]fsta=_fileSystem.listStatus(p);for(FileStatusst

java - 如何用多线程扫描目录

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我有一个单线程的目录扫描程序。扫描文件时,我必须读取属性信息并将其插入数据库。我有两个问题。为了提高性能:如何使用多线程进行扫描?(扫描安卓手机的sd卡​​)如何优化批量插入数据库?下面是代码list:voidscan(){Filefile=newFile("/mnt/sdcard");fun(file);}voidfun(Filefile){if(!fi

java - 一个 CPU 上一次可以运行多少个线程

我想知道单个应用程序在一个CPU上可以同时运行多少个线程?我喜欢一个简单的:importjava.awt.SystemColor;importjava.util.Date;publicclassThreadcall{/***@paramargsthecommandlinearguments*/publicstaticvoidmain(String[]args){//TODOcodeapplicationlogichereSystem.out.println("--------------------------");System.out.println(Runtime.getRunti

java - 无法为当前线程获取事务同步 session

从xml-转换为Java-Config的Spring4/Hibernate4项目出现以下异常。org.hibernate.HibernateException:Couldnotobtaintransaction-synchronizedSessionforcurrentthread该项目在Eclipse中启动时没有错误,但在第一次请求时出现异常。在我的ConfigRoot类中,我为DataSource、SessionFactory、HibernateTransactionManager配置了@Bean>,改进的命名策略。我所有的@Service服务都带有@Transactional注释

java - JAVA中如何使静态方法线程安全?

我正在创建Web应用程序并遇到线程安全问题。在阅读了几个类似的问题后,我仍然对我的情况感到困惑。我正在使用javaspring框架来设置RESTweb服务。所有请求(Person对象的JSON)都将传递给checkIfGoodName函数,如Checker.checkIfGoodName(person)。它们都是静态方法调用。我想知道,这个函数Checker.checkIfGoodName线程安全吗?如果不是,如何修改代码?我有如下代码:检查器.javapublicclassChecker{publicstaticvoidcheckIfGoodName(Personperson){ch

java - lwjgl 3、如何获取当前线程中的OpenGL上下文?

我在LWJGL3中使用OpenGL,但出现以下错误;Exceptioninthread"main"java.lang.IllegalStateException:ThereisnoOpenGLcontextcurrentinthecurrentthread.atorg.lwjgl.opengl.GL.getCapabilities(GL.java:157)atorg.lwjgl.opengl.GL11.getInstance(GL11.java:1390)atorg.lwjgl.opengl.GL11.glClearColor(GL11.java:1842)atcom.base.eng

java - 线程 2 是否可以打印 “x=0” ?

线程2是否可以打印“x=0”?intx=0;booleanbExit=false;Thread1(notsynchronized)x=1;bExit=true;Thread2(notsynchronized)if(bExit==true)System.out.println("x="+x); 最佳答案 IsitpossibleforThread2toprint“x=0”?是如果指令被JIT编译器重新排序为:线程1:bExit=truex=1线程2:if(bExit==true)System.out.println("x="+x);/

java - 线程主java.lang.exceptionininitializerError中的异常在没有hadoop的情况下安装spark

我正在尝试安装spark2.3.0,更具体地说,它是spark-2.3.0-bin-hadoppo2.7'D:\spark\bin'已经添加到环境变量PATH中。同时,安装了JDK-10。未安装Hadoop。但是谷歌说spark可以在没有hadoop的情况下工作。这是错误信息C:\Users\a>spark-shellExceptioninthread"main"java.lang.ExceptionInInitializerErroratorg.apache.hadoop.util.StringUtils.(StringUtils.java:80)atorg.apache.hadoo

java - servlet 中的线程局部变量

threadlocals变量是否对所有向拥有这些变量的servlet发出的请求都是全局的?我正在为服务器使用树脂。感谢awnser。我想我可以让自己更清晰。具体案例:我想:在请求开始执行时初始化一个静态变量。能够以线程安全的方式在从servlet调用的方法的进一步执行中查询变量的值,直到请求结束执行 最佳答案 简短回答:是的。更长一点:这就是Spring发挥其魔力的方式。参见RequestContextHolder(通过DocJar)。但需要注意-您必须知道何时使ThreadLocal无效,如何推迟到其他线程以及如何(不)与非线程本