Before the threading module became popular, the primary thread-based development module was thread. If you are using an older version of Python 2, it is possible to use the module as it is. However, according to the module documentation page, the thread module was, in fact, renamed _thread in Python 3.
For readers that have been working with the thread module to build multithreaded applications and are looking to port their code from Python 2 to Python 3, the 2to3 tool might be a solution. The 2to3 tool handles most of the detectable incompatibilities between the different versions of Python, while parsing the source and traversing the source tree to convert Python 2.x code into Python 3.x code. Another trick to achieve the conversion is to change the import code from import thread to import _thread as thread in your Python programs.
The main feature of the thread module is its fast and sufficient method of creating new threads to execute functions: the thread.start_new_thread() function. Aside from this, the module only supports a number of low-level ways to work with multithreaded primitives and share their global data space. Additionally, simple lock objects (for example, mutexes and semaphores) are provided for synchronization purposes.