我对线程如何工作有点困惑。不久之前,当我为我的一个应用程序创建一个FTP客户端时,我曾与他们合作,但只是习惯了它开始下载并刷新文件列表,没有什么可以时髦的。但是现在,我将广泛使用它来从JSON服务器获取信息并填充数据。我已经开始工作,但我想确保我做得对。这是代码。
public void getGameList()
{
new Thread(new Runnable() {
public void run() {
Looper.prepare();
List<Game> mGames = new ArrayList<Game>();
mApiHelper = new ApiHelper("");
mGames = mApiHelper.getGames("name=Metal&&platform=Microsoft%20Xbox%20360");
Message msg = new Message();
msg.what = 1;
msg.obj = mGames;
mHandler.sendMessage(msg);
}
}).start();
}
现在,我不需要那个线程继续运行,但是从我对线程的印象中,他们只是留在那里直到他们被告知要离开。真的吗?我是否需要像在其他示例中看到的那样将代码包装在while循环中?或者,一旦它看到没有别的事情可以停止这个线程吗?