Android 哪个线程(GUI 或自定义)使计算更好?

Android in which thread(GUI or custom) make calculations better?

我听说在 GUI 线程中进行计算是个坏主意,所以我想到的是:

float someX;
float someY;
Thread t = new Thread(new Runnable() {

      //making calculations here, setting someX, someY

})

this.runOnUiThread(new Runnable() {

   setX(someX);
   setY(someY);

});

因此他们并行工作并在 class 中共享相同的变量,这是让事物在屏幕上移动的正确方法吗?

我想过使用 AsyncTask,但据说这仅适用于短期操作...所以跳过它

如果上述方法是正确的,为什么在 flash(actionscript) 中所有的计算都在 onFrame 事件(我认为是 GUI 线程)中进行?

addEventListener(Event.ENTER_FRAME, function(){

//all is made here

});

当然知道actionscript是单线程的,就问问

请提出任何建议或建议

这实际上取决于您的工作量。大多数时候,我可以使用主线程进行小型图形计算。我不确定你在做什么,但是像根据输入设置位置这样的事情听起来像是主线程的事情。一般来说,如果你期望即时响应,你应该可以把它放在主线程中。

您可以判断是否需要将工作移至新线程,因为您的应用会开始滞后。那时,您应该在一个新线程中工作。 This might be helpful.