我打电话:
bleScanner.startScan(leScanCallback);
Run Code Online (Sandbox Code Playgroud)
我确实得到了 onScanResults。
但是我从来没有得到过 onBatchScanResults,所以我想知道什么时候会调用它。我这样问是因为我担心该函数可能会在不同的条件下被调用(即当找到很多蓝牙设备时)。
当经历一个非常长的数组,或者每个索引都有一个复杂的计算时,有一种方法可以在迭代数组后产生最长的时间.最长时间是每帧的最大时间.
例如:
for(int i = 0; i < 100000; i++){
do something complicated;
if(maximum amount of time /*right before the user feels lag*/)
yield; (come back and resume i where it last yielded)
}
}
//order does not matter
Run Code Online (Sandbox Code Playgroud)
所以基本上,我想要实现的是cpu的高百分比使用率,但是,我不希望它超过100%,用户将遇到滞后
编辑:抱歉有点混乱.一个更清晰的例子可能是在诸如blender之类的程序中进行3d渲染.当用户点击渲染时,它会计算每个像素以确定它需要的颜色.当人们查看cpu使用情况时,它接近100%.但是,它在计算像素时不会冻结,同时会尽可能计算最大量