有没有其他方法可以在mono / android应用程序中使用更多cpu而不是线程? 请给出一些建议。
谢谢,
答案 0 :(得分:0)
这是一个多么奇怪的问题。您可以在主线程中执行各种处理器密集型操作。读取和写入位图数据,执行各种计算等。为什么要这样做?你希望绑多少CPU?
答案 1 :(得分:0)
不知道它服务的目的是什么,但是这不会使用任何工作线程并且会很好地吸收CPU:
[Activity(MainLauncher = true)]
public class PointlessActivity : Activity
{
protected override void OnCreate(Bundle bundle)
{
while(true) { }
}
}
答案 2 :(得分:0)
您可以实现一个Canvas,使每个时间无效,如下所示:
private class Painter extends View{
ArrayList<Point> points;
public Painter(Context context){
super(context);
}
public void draw() {
points = new ArrayList<Point();
for (int i = 0; i < 10000; i++) {
//assign Points to the array
Point p = new Point();
p.x = 10;
p.y = 30;
points.add(p);
}
nameOfTheInstancePainter.invalidate();
}
@Override
protected void onDraw(Canvas c) {
for (int i = 0; i < 10000; i++) {
//paint aaaall the points
}
nameOfTheInstancePainter.invalidate(); //that will cause the ReDraw of everything everytime
}
}
哦,顺便说一下,画一个画布使用不同的线程,这就是我做这个代码的原因!