J2ME游戏开发第四章多线程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J2ME游戏开发 游戏开发
第四章 多线程
多线程
之前应该有学过,但是呢,在J2ME里还是 很重要的,所以拿出来再讲一下。
让应用程序看起来能同时Leabharlann Baidu好几件事情,应 该怎么办呢?
列位,这还用想个 啥子来,看上面不 就知道了吗
什么是多线程
提到线程,就不能不提一下进程,什么是进 程呢?运行桌面上的一个软件,打开任务管 理器,就会发现有“进程”选项卡,那么这 个软件呢,就可以看成是一个进程。 进程占据着特定的一片内存区域。 线程是包含在进程里面的,一个软件可以做 好几件事情,那么每一件事情都是由一个线 程来管理。线程可以共享进程占据的那片内 存区域。
什么是多线程
线程是程序中一个单一的顺序控制流程。在 单个程序中同时运行多个线程完成不同的工 作,称为多线程。
线程实现的方法
方法1:Thread继承法
定义一个类,继承Thread类 重写run()方法 对象调用start()方法
方法2:Runnable实现法
定义一个类,实现Runnable接口 重写run()方法 定义一个Thread对象,将该对象传进去,调用 start()方法
线程安全问题:线程协作
问题1:线程1负责1到1000的求和计算, 线程2负责得到最后的运算结果。期间可能 会发生什么问题呢?不知何时获取结果呀? 等待一个线程运行完毕:join()方法 ----Code
线程安全问题:线程同步
问题2:线程1和线程2都同时负责访问一个 资源,会发生什么问题呢? 案例:有10张票,现有2个线程负责卖票, 要求票数为0时能够给予提示。 ------Code 线程同步的关键字是:synchronized
两种方法的区别
都能实现相同的功能
不同之处在于Runnable共享一个变量 ----Code 载入不同的Runnable对象即可区别 ----Code
多线程举例
例子:界面上有两个StringItem,要求第一 个上面的数字每隔1秒钟变化,第二个上面 的数字每隔2秒钟变化。 可以看出来,这两个StringItem之间没有任 何关系,但是要它们同时变化的话,就需 要为每个StringItem开一个线程 --Code
相关文档
最新文档