2013-03-23 48 views
1

在我的j2me应用程序中,我有一个包含5个坐标值的double数据类型数组。该数组位于线程内部,用于持续检查GPS是否给出相同的值。在J2ME中,如何暂停和恢复线程

一旦它得到正确的匹配,我想暂停线程,然后从线程中删除匹配找到的值,并恢复线程。我想这应该发生,直到数组包含坐标值。一旦数组变空了,我想暂停该线程直到它获得新的值,再次当数组获取值时,它应该重新开始。

我该如何在代码中实现这个逻辑?

回答

0

如果是我,我不会打扰把线程暂停。我只是让它一直在运行。

while (true) { 

for (coordinate in arrayOfCoordinates) { 
    if (checkLocation(coordinate)) removeFromArray(coordinate); 
} 

try { Thread.sleep(5000); } catch (Exception e) {} 

} 

我没有看到任何原因使线程暂停,当它只是做出你描述的这么小的检查。

+0

要从数组中删除匹配找到的坐标值我想暂停线程....一旦相应的值被删除,然后恢复线程运行.. – Rahul 2013-03-24 11:13:26

+0

没有必要暂停该线程。从阵列中移除条目只需要几毫秒,如果不是更短的话。 – 2013-03-24 13:51:44