android 关于线程的问题

这个地方就是本来有一个线程要做一个功能,在这个线程中,我需要再开一个线程来执行另一个操作
举个例子,比如这个线程要做一个读卡(就当是公交卡吧)的操作,当我读到卡中的内容,需要根据这个内容,再开一个线程将数据上传到web,两个线程都是必须要的,可以这个样子写吗图片说明,或者直接在这个线程中这样new 一下,求各位大神帮忙解答一下,在线急等

3个回答


之前做的色觉翻译和模拟的时候总出现假死机情况,原因是没加线程,Android把所有的资源都用于处理(执行我的操作),后来加上线程,就没了这假死情况。
在Android系统中创建和启动线程的方法与传统的Java程序相同,首先要创建一个Thread对象,然后使用Thread类的start方法开始一个线程。线程在启动后,就会执行Runnable接口的run方法。......
答案就在这里:关于Android的线程问题
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

可以,但是不建议这样做,因为代码很乱.你可以在A线程里面发了更新ui的消息后直接开一个属于A的子线程就好了.handler里面还是不要开线程好.

sinat_33815108
sinat_33815108 回复zero172: 好的,谢谢
接近 4 年之前 回复
zero172
zero172 回复sinat_33815108: 是的
接近 4 年之前 回复
sinat_33815108
sinat_33815108 就是可以直接在那个子线程中,直接开启第二个线程吗?
接近 4 年之前 回复

可以吧,你现在的写法,相当于在主线程又创建了一个子线程去上传卡信息。不建议在handler中去创建,至少看起来感觉比较乱
另外你也可以当在子线程中读取到卡信息时,调用主线程更新UI,就在当前子线程提交卡信息,不用再创建子线程。
除非是读卡线程还要继续读卡,这种情况就立即创建子线程上传信息即可。

sinat_33815108
sinat_33815108 就是直接在那个读卡程序中,直接 可以写 new ThreadSocket(db,upHandler,parms).start();是吗,这个样子不会出现问题的吧
接近 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐