当前位置: 首页 > 面试题库 >

如何在Java中进行多重处理,以及预期的速度提高?

卫成和
2023-03-14
问题内容

我是使用Java在csv文件上进行一些数据处理的新手。为此,我使用Java的多线程功能(线程池)将csv文件批量导入Java并在它们的每一行上执行一些操作。在我的四核处理器上,多线程处理大大加快了处理速度。

我很好奇,知道多处理是否/将进一步加快操作速度? 如果是这样,某处有可用的教程吗?(《
Java基础教程》提到了一个类,但是我对语法的理解并不足够,无法自己理解该类:

来自http://download.oracle.com/javase/tutorial/essential/concurrency/procthread.html:

Java虚拟机的大多数实现都是作为单个进程运行的。Java应用程序可以使用ProcessBuilder对象创建其他进程。多进程应用程序超出了本课程的范围(
然后在哪里解释?)


问题答案:

我很好奇,知道多处理是否/将进一步加快操作速度?

不,实际上这可能会使情况变得更糟。如果要从多线程切换到多处理,则可以有效地多次启动JVM。启动JVM并非易事。实际上,台式机上JVM的启动方式与企业公司启动JVM的方式不同,只是为典型的最终用户减少了applet启动的等待时间。



 类似资料:
  • 我目前正在研究人工神经网络、支持向量机和线性回归方法在基于气象因素(13个因素)的地区水果产量预测中的应用 在WEKA上实现这些方法时,我得到了不好的结果:就像在多层接收器的情况下一样,我的结果是:(我将数据集划分为28个用于训练,8个用于测试)==运行信息=== 方案:weka。分类器。功能。多层Perceptron-L 0.3-M 0.2-N 500-V 0-S 0-E 20-H a-G-R关

  • 我正在为长时间运行的任务使用IntentService, ResultRecencer机制,并在IntentService运行期间在我的活动中显示进度对话框。当任务在intentService中完成时,我将适当的结果代码发送到onReceiveResult中的活动,并相应地关闭进度对话框。一切正常,除非设备方向发生变化,在此期间,应用程序在活动破坏时崩溃,Intent服务尝试将结果代码发送到已销毁

  • 默认情况下,C++容器应该是线程安全的。我必须错误地使用多线程,因为对于此代码: 我得到了:

  • 我尝试DateTimeFormatter将输入日期解析为。我使用了下面的代码 无法解析日期 闰年也是失败的。

  • 我是Apache Hbase的新手,我使用的是hbase-0.98.13,并且我已经创建了一个表示例,其列族为sample_family。并且我已经将pig脚本的输出加载到hbase表中。当我尝试基于列族中的一个列扫描表时,它需要超过2分钟。 是否为此进行任何配置更改?有人能帮我吗?

  • 问题内容: 为了使我的代码更“ Pythonic”且更快,我使用“multiprocessing”和一个map函数向其发送a)函数和b)迭代范围。 植入的解决方案(即直接在范围tqdm.tqdm(range(0,30))上调用tqdm不适用于多重处理(如以下代码中所述)。 进度条显示为0到100%(当python读取代码时?),但是它并不表示map函数的实际进度。 如何显示进度条以指示“地图”功能