问题:Thread .Sleep(500)后你的线程睡了多久?

在J2ME游戏开发中,使用Thread.sleep(500)来保证游戏逻辑和画面刷新的间隔可能不准确。由于gameLogic()和paint()的执行时间变化,导致实际间隔时间不固定,影响游戏体验。解决方案是计算这两个方法的执行时间,并根据剩余时间调整线程睡眠,以确保固定间隔。通过比较当前时间与上一次执行时间的差值,如果小于预设的RUN_RATE,则让线程补足剩余时间,从而实现稳定间隔。
摘要由CSDN通过智能技术生成

我们在J2ME中继承Canvas类的时候一般会再实现Runnable接口,实现多线程的效果个人认为实际上这边的线程不过是起到一个定时器的作用,完全可以用一个Timer或者用一个Inner class来实现这个的功能,在这里不对这个做过多的讨论。

我们的run()这个函数一般是实现这样的功能,定时的处理游戏逻辑gameLogic()和重画屏幕paint()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值