Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 具有有限线程的多个执行路径_Java_Multithreading_Asynchronous_Jvm_Reactor - Fatal编程技术网

Java 具有有限线程的多个执行路径

Java 具有有限线程的多个执行路径,java,multithreading,asynchronous,jvm,reactor,Java,Multithreading,Asynchronous,Jvm,Reactor,我有一个具有挑战性的异步编程任务,不知道是否有人用Java做过类似的事情。让我们假设我正在开发一个框架,它将像这样使用: 做一些自定义Java的东西 调用框架方法 做一些自定义Java的东西 调用框架方法 从用户的角度来看,上面的代码是同步的。然而,框架方法在内部执行一些长时间的异步操作,并且在操作期间阻塞用户线程是无效的/不可行的。阻止用户线程是不可行的,因为我可能需要支持步骤1-4的数千个并发执行。。。换句话说,我正在寻找一种方法来支持使用Y线程执行X并发Java代码,其中X>Y。。。这有点

我有一个具有挑战性的异步编程任务,不知道是否有人用Java做过类似的事情。让我们假设我正在开发一个框架,它将像这样使用:

  • 做一些自定义Java的东西
  • 调用框架方法
  • 做一些自定义Java的东西
  • 调用框架方法

  • 从用户的角度来看,上面的代码是同步的。然而,框架方法在内部执行一些长时间的异步操作,并且在操作期间阻塞用户线程是无效的/不可行的。阻止用户线程是不可行的,因为我可能需要支持步骤1-4的数千个并发执行。。。换句话说,我正在寻找一种方法来支持使用Y线程执行X并发Java代码,其中X>Y。。。这有点类似于Reactor模式在IO中所做的,但更通用。。有什么想法吗?

    普通的线程池/执行器会帮你解决这个问题


    如果您可以将框架作业拆分为几个原子任务,这些任务将激活其他任务;这些作业将能够以较少的活动线程执行,而不是以较高的吞吐量运行作业

    使用java.util.concurrent格式的类,对于初学者来说,例如..

    从JDK 1.5开始,您手头就有并发API。给你一个好的开始

    线程之间或与用户线程之间的关系是什么?这些是火和遗忘吗?