java任务处理器,java-如何将任务分配给每个处理器核心?

在Android设备上,通过使用ExecutorService创建固定大小的线程池,可以实现加密函数的并行调用,从而显著提高批量文件加密的速度。通过将加密任务提交给线程池,200个文件的加密时间可以从大约5分钟减少到更短的时间,充分利用了四核处理器的性能。
摘要由CSDN通过智能技术生成

我正在四核Android手机上执行基本的加密/解密.

当前,每个文件加密时间为1.45秒.对于200个文件,多数民众赞成在5分钟左右.

如果使用全部4个内核,我可以将性能提高4倍.

for(i=0;i<200;i++)

{

encrypt(file[i]);

}

将是简化的伪代码,我现在正在使用.

如何在android java编程的所有4个处理器内核上并行调用crypto函数?

解决方法:

像这样:

ExecutorService executorService = Executors.newFixedThreadPool(CORE_COUNT);

for (int i = 0; i < 200; i++) {

executorService.submit(new Runnable() {

@Override

public void run() {

encrypt(file[i]);

}

});

}

// Waiting for completion

while (!executorService.awaitTermination(100L, TimeUnit.MILLISECONDS);

标签:encryption,multicore,java,android

来源: https://codeday.me/bug/20191028/1954606.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值