簡體   English   中英

在android中現有(主)線程上運行代碼的通用方法?

[英]Generic way to run code on existing (main) thread in android?

我有一個模塊,該模塊當前已用於android應用程序,但旨在用作通用java模塊。 在某個時候它會在后台線程上做一些工作,並且需要它們提供在原始線程(在這種情況下,是android中的主線程)上運行的回調。 我知道android特定LooperHandler'某種組合可以用於在android中完成此操作。 但是,有沒有更通用的方法可以在android應用程序和通用java應用程序中使用呢?

Java沒有“在另一個線程上運行代碼”的通用方法。

每個線程都通過調用run()方法開始。 從那時起,直到線程死亡,它只會執行run()方法告訴它要做的事情。

有一些特殊情況:例如,線程池工作線程的run()方法告訴線程從隊列中挑選任務並執行它們。 通過將調用f()的任務放入隊列,其他一些線程可以使工作線程調用任意函數f()。 但這僅是由於工作程序的run()方法是如何編寫的而起作用的。

run()方法(當然還有它調用的其他任何方法)完全控制線程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM