我想了解一下BlackBerry中的线程概念。
在Android中,我们需要进行异步任务或处理程序的通信。在BlackBerry中有没有类似的东西?两个线程如何通信?如何将数据从后台线程传递到UI线程?
发布于 2013-03-20 17:53:19
并发性不是一件微不足道的事情。设计一个线程安全的解决方案真的很难。在Blackberry Java中,情况甚至更糟,因为只有JavaME线程API可用,这意味着您不能使用所有JavaME高级类(如执行器、锁、集合等)。
我的建议是,不要尝试自己移植Android的AsyncTask或任何其他与并发相关的高级类,因为很可能会出错(除非您精通并发编程)。我自己会尽可能地避免它。相反,请尽可能保持并发代码的简单和小巧。大多数情况下,您所需要的就是从工作线程刷新GUI。使用UiApplication.invokeLater和UiApplication.invokeAndWait可以很容易地做到这一点,而且根本不需要编写并发代码。
如果您想了解有关并发的更多信息,我将从this tutorial by Oracle开始。它的目标是JavaSE,但几乎前半部分对JavaME也很有用。如果你想学习更高级的并发编程,this book是必读的。
https://stackoverflow.com/questions/15492539
复制相似问题