Python Thread start() Method with Example

Python Thread.start() Method: In this tutorial, we will learn about the start() method of Thread class in Python with its usage, syntax, and examples. By Hritika Rajput Last updated : April 24, 2023

Python Thread.start() Method

The Thread.start() method is an inbuilt method of the Thread class of the threading module, it is used to start a thread's activity. This method calls the run() method internally which then executes the target method. This method must be called at most one time for one thread. If it is called more than once, it raises a RuntimeError.

Module

The following module is required to use start() method:

import threading

Class

The following class is required to use start() method:

from threading import Thread

Syntax

The following is the syntax of start() method:

start()

Parameter(s)

The following are the parameter(s):

  • None

Return Value

The return type of this method is <class 'NoneType'>, it does not return anything.

Example of Thread.start() Method in Python

# Python program to explain the
# use of start() method in Thread class

import time
import threading

def thread_1(i):
    time.sleep(5)
    print('Value by Thread 1:', i)

def thread_2(i):
    print('Value by Thread 2:', i)
    
# Creating two sample threads 
thread1 = threading.Thread(target=thread_1, args=(1,))
thread2 = threading.Thread(target=thread_2, args=(2,))

# Starting two threads
thread1.start()
thread2.start()

Output

Value by Thread 2: 2
Value by Thread 1: 1

Example 2

# Python program to explain the
# use of start() method in Thread class

import threading

def thread_1(i):
    print('Value by Thread 1:', i)

def thread_2(i):
    print('Value by Thread 2:', i)

def thread_3(i):
    print('Value by Thread 3:', i)    

    
# Creating three sample threads 
thread1 = threading.Thread(target=thread_1, args=(1,))
thread2 = threading.Thread(target=thread_2, args=(2,))
thread3 = threading.Thread(target=thread_3, args=(3,))

# Starting three threads
thread1.start()
thread2.start()
thread3.start()
    
thread1.start()

Output

Value by Thread 1: 1
Value by Thread 2: 2
Value by Thread 3: 3
Traceback (most recent call last):
  File "main.py", line 26, in <module>
    thread1.start()
  File "/usr/lib/python3.8/threading.py", line 848, in start
    raise RuntimeError("threads can only be started once")
RuntimeError: threads can only be started once

Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.