Java从另一个线程在主线程中运行代码

Java从另一个线程在主线程中运行代码,第1张

Java从另一个线程在主线程中运行代码

注意:此答案已引起广泛关注,我需要对其进行更新。自从原始答案发布以来,@ dzeikei的评论几乎和原始答案一样受到关注。因此,这里有两种可能的解决方案:

1.如果您的后台线程引用了一个

Context
对象:

确保您的后台工作线程可以访问Context对象(可以是Application上下文或Service上下文)。然后只需在后台工作线程中执行此 *** 作:

// Get a handler that can be used to post to the main threadHandler mainHandler = new Handler(context.getMainLooper());Runnable myRunnable = new Runnable() {    @Override     public void run() {....} // This is your pre};mainHandler.post(myRunnable);

2.如果您的后台线程没有(或不需要)

Context
对象

(由@dzeikei建议):

// Get a handler that can be used to post to the main threadHandler mainHandler = new Handler(Looper.getMainLooper());Runnable myRunnable = new Runnable() {    @Override     public void run() {....} // This is your pre};mainHandler.post(myRunnable);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5508986.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-13
下一篇 2022-12-13

发表评论

登录后才能评论

评论列表(0条)

保存