The example of this article shares the method of starting a thread in java for your reference. The specific content is as follows
1. Inherit Thread
public class java_thread extends Thread{ public static void main(String args[]) { (new java_thread()).run(); System.out.println("main thread run "); } public synchronized void run() { System.out.println("sub thread run "); } }
2. Implement the Runnable interface
public class java_thread implements Runnable{ public static void main(String args[]) { (new Thread(new java_thread())).start(); System.out.println("main thread run "); } public void run() { System.out.println("sub thread run "); } }
3. Use it directly in the function body
void java_thread() { Thread t = new Thread(new Runnable(){ public void run(){ mSoundPoolMap.put(index, mSoundPool.load(filePath, index)); getThis().LoadMediaComplete(); }}); t.start(); }
4. Compare:
Advantages of implementing the Runnable interface :
1) Suitable for multiple threads of the same program code to process the same resource
2) Can avoid the limitation of single inheritance in Java
3) Increase the robustness of the program, the code can be used by multiple Threads are shared and code and data are independent.
Advantages of inheriting the Thread class:
1) The thread class can be abstracted when it is necessary to use the abstract factory pattern design.
2) Multi-thread synchronization
Advantages of using function body
1) No need to inherit thread or implement Runnable to reduce the scope.
The above is the entire content of this article. I hope it will be helpful to everyone's learning. I also hope that everyone will support the PHP Chinese website.
For more articles on comparative analysis of the three ways to start threads in Java, please pay attention to the PHP Chinese website!