2012-02-06 9 views
5

यदि हैंडलर को मुख्य यूआई थ्रेड में तुरंत चालू किया गया था, तो क्या एक रननेबल वाला एक पोस्ट एक बच्चे धागा बनाता है जो संदेश कतार में जोड़ा जाता है, या यह केवल यूआई थ्रेड में चलाया जाता है?क्या हैंडलरपोस्ट (रननेबल) एक नया धागा शुरू करता है?

handler.post(new Runnable(){ 
    public void run() { 
     // do stuff 
    } 
}); 

उत्तर

11

नहीं, यह एक नया धागा नहीं बनाता है। यह बस धागा अपने हैंडलर से जुड़ा हुआ है, जो इस मामले में अपने यूआई धागा मतलब है

+0

धन्यवाद वकास। – xil3

0
handler.post(new Runnable()){ 

public void run(){ 
//do something 
} 
}); 

इस बात की गारंटी नहीं है कि यह पैदा करेगा एक नया thread.it सिर्फ धागे की runnable फोन के बारे में अपना runnable कार्यान्वित जिसमें हैंडलर से जुड़ा हुआ है (यहां यूआई थ्रेड)।

हैंडलर एक नया धागा नहीं बनाता है, यह उस थ्रेड के लूप से बांधता है जो इसे बनाया गया है (इस मामले में मुख्य धागा), या एक लूपर जिसे आप इसे निर्माण के दौरान देते हैं।