当设备连接到PC时线程行为不同,而不是Android时的线程行为

时间:2014-12-17 20:49:30

标签: java android eclipse multithreading

请帮助我理解为什么我会看到我的行为。 我有一个测试android应用程序,只需单击一个按钮就可以创建一个新线程,它应该在后台运行并创建另一个线程来绘制一个像拨号盘一样的时钟。当设备屏幕关闭时,我正在尝试做某事。 现在,当我的设备连接到我的电脑(eclipse)时,我可以看到调试语句,我启动线程并按下电源按钮一次关闭屏幕,应用程序按照我的意图行事并且在计时器到期后(线程继续运行)当屏幕变暗时,代码打开屏幕,然后做一些其他的事情。 然而,我的问题是当设备没有连接到电脑(日食)我做同样的事情,但似乎线程暂停,只有当屏幕打开时才会重新恢复... 这是正常的吗? 为什么线程在设备连接时不会暂停,而在不连接时会怎么做? 请允许有人在这里说清楚 感谢

1 个答案:

答案 0 :(得分:0)

好的,所以我已经找到了解决问题的方法,以防其他人遇到这个或类似的问题。

我所做的是当我的新线程启动时,我创建了一个部分唤醒锁,当进程完成时它会释放它。

有很多关于如何使用WakeLock for android的代码片段和教程..

感谢所有回复此问题的人。