gpt4 book ai didi

android - 获取 RenderScript 进度

转载 作者:行者123 更新时间:2023-11-30 03:53:35 29 4
gpt4 key购买 nike

我正在使用 forEach_root 方法在 Android 上计算图像。

RenderScript RS=RenderScript.create(context);

Allocation inPixelsAllocation = Allocation.createFromBitmap(RS, inBitmap,
Allocation.MipmapControl.MIPMAP_NONE,Allocation.USAGE_SCRIPT);
Bitmap out=Bitmap.createBitmap(width,height,Bitmap.Config.ARGB_8888);
Allocation outPixelsAllocation = Allocation.createFromBitmap(RS, out,
Allocation.MipmapControl.MIPMAP_NONE,Allocation.USAGE_SCRIPT);

mScript.forEach_root(inPixelsAllocation,outPixelsAllocation);
outPixelsAllocation.copyTo(out);
return out;

这工作正常,但是,由于可能有大量数据(要处理超过 1800 万像素),因此可能需要一些时间。是否有可能获取 RenderScript forEach 循环的当前进程?

最佳答案

我假设“当前进程”是指状态(这样您就可以显示进度条或类似的东西)。没有办法知道已经完成了多少工作,也没有办法知道开发人员可以看到多少工作。事实上,我认为我们实际上无法真正计算出它,因为您可以使用一个简单的 if 语句来查找该像素坐标,从而使内核实例的任何单个单元格花费更长的时间。所以,我有两个可能的建议给你,这取决于你认为状态信息会给你带来什么:1)如果你想制作一个进度条并想让用户知道你确实是,请使用微调器还在工作; 2) 如果您需要此同步,您稍后对输入/输出分配所做的任何操作都将等到内核完成(即您的 copyTo 操作将适本地阻塞)。

关于android - 获取 RenderScript 进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13701525/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com