You can implement thread pools by adding a single line of code without changing the order of any previous code.
import vthread
@vthread.pool(3) # just use this line to make pool, Create a threadpool with three threads
def crawl(i):
import time;time.sleep(1) # Simulation time consuming
print("crawl_url:",i)
urls = ["http://url1",
"http://url2",
"http://url3",
"http://url4"]
for u in urls:
crawl(u) # This function becomes a function that adds the original function to the thread pool.
It provides a method for grouping the thread pool
import vthread
pool_1 = vthread.pool(5,gqueue=1) # open a threadpool with 5 threads named 1
pool_2 = vthread.pool(2,gqueue=2) # open a threadpool with 2 threads named 2
@pool_1
def foolfunc1(num):
time.sleep(1)
print(f"foolstring1, test3 foolnumb1:{num}")
@pool_2
def foolfunc2(num):
time.sleep(1)
print(f"foolstring2, test3 foolnumb2:{num}")
@pool_2
def foolfunc3(num):
time.sleep(1)
print(f"foolstring3, test3 foolnumb3:{num}")
for i in range(10): foolfunc1(i)
for i in range(4): foolfunc2(i)
for i in range(2): foolfunc3(i)
# default gqueue is 0
Metadata
Release files for vthread 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vthread-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Release files / vthread-0.1.5-py3-none-any.whl
| Download URL | vthread-0.1.5-py3-none-any.whl |
|---|---|
| Size | 14.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b9a7101170a51c5c5d9d2b287367a52821c4f22ab701a184591b7dab84c9b0b
|
|
BLAKE2b-256 checksum How to use checksums |
977b3d3944cc5de9e443253b860ecdfcee8098ca6afded234cf28df363f1bbb3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/3.7
|