Fungsi tidur Python () (Dengan Contoh)

Fungsi sleep () menangguhkan (menunggu) eksekusi thread saat ini selama beberapa detik.

Python memiliki modul bernama waktu yang menyediakan beberapa fungsi berguna untuk menangani tugas yang berhubungan dengan waktu. Salah satu fungsi yang populer di antara mereka adalah sleep().

The sleep()Fungsi menunda eksekusi dari thread saat untuk sejumlah tertentu dari detik.

Contoh 1: Python sleep ()

  import time print("Printed immediately.") time.sleep(2.4) print("Printed after 2.4 seconds.") 

Berikut cara kerja program ini:

  • "Printed immediately" dicetak
  • Menunda (Penundaan) eksekusi selama 2,4 detik.
  • "Printed after 2.4 seconds" dicetak.

Seperti yang Anda lihat dari contoh di atas, sleep()menggunakan bilangan floating-point sebagai argumen.

Sebelum Python 3.5 , waktu penangguhan sebenarnya mungkin kurang dari argumen yang ditentukan untuk time()fungsi tersebut.

Sejak Python 3.5 , waktu penangguhan setidaknya akan menjadi detik yang ditentukan.

Contoh 2: Python membuat jam digital

 import time while True: localtime = time.localtime() result = time.strftime("%I:%M:%S %p", localtime) print(result) time.sleep(1) 

Dalam program di atas, kami menghitung dan mencetak waktu lokal saat ini di dalam while loop. Kemudian program menunggu selama 1 detik. Sekali lagi, waktu lokal saat ini dihitung dan dicetak. Proses ini terus berlanjut.

Saat Anda menjalankan program, hasilnya akan seperti ini:

 14:10:50 14:10:51 14:10:52 14:10:53 14:10:54… 

Berikut ini adalah versi lebih baik yang sedikit dimodifikasi dari program di atas.

  import time while True: localtime = time.localtime() result = time.strftime("%I:%M:%S %p", localtime) print(result, end="", flush=True) print("", end="", flush=True) time.sleep(1) 

Untuk mempelajari lebih lanjut, kunjungi jam digital di shell Python.

Multithreading dengan Python

Sebelum berbicara tentang sleep()program multithread, mari kita bicara tentang proses dan utas.

Program komputer adalah kumpulan instruksi. Proses adalah pelaksanaan instruksi tersebut.

Utas adalah bagian dari proses. Suatu proses dapat memiliki satu atau lebih utas.

Contoh 3: Multithreading Python

Semua program di atas dalam artikel ini adalah program single-threaded. Berikut adalah contoh program Python multithread.

  import threading def print_hello_three_times(): for i in range(3): print("Hello") def print_hi_three_times(): for i in range(3): print("Hi") t1 = threading.Thread(target=print_hello_three_times) t2 = threading.Thread(target=print_hi_three_times) t1.start() t2.start() 

Saat Anda menjalankan program, hasilnya akan seperti ini:

 Halo Halo Hai Halo Hai Hai 

Program di atas memiliki dua utas t1 dan t2. Utas ini dijalankan menggunakan pernyataan t1.start()dan t2.start().

Perhatikan bahwa, t1 dan t2 berjalan secara bersamaan dan Anda mungkin mendapatkan keluaran yang berbeda.

Kunjungi halaman ini untuk mempelajari lebih lanjut tentang Multithreading dengan Python.

time.sleep () dalam program multithread

The sleep()Fungsi menunda eksekusi dari thread saat untuk sejumlah tertentu dari detik.

Dalam kasus program single-threaded, sleep()eksekusi thread dan proses akan ditangguhkan. Namun, fungsi tersebut menangguhkan utas daripada seluruh proses dalam program multithread.

Contoh 4: sleep () dalam program multithread

 import threading import time def print_hello(): for i in range(4): time.sleep(0.5) print("Hello") def print_hi(): for i in range(4): time.sleep(0.7) print("Hi") t1 = threading.Thread(target=print_hello) t2 = threading.Thread(target=print_hi) t1.start() t2.start()

Program di atas memiliki dua utas. Kami telah menggunakan time.sleep(0.5)dan time.sleep(0.75)menangguhkan eksekusi kedua utas ini masing-masing selama 0,5 detik dan 0,7 detik.

Bacaan yang Direkomendasikan: thread tidur Python time.sleep ()

Artikel yang menarik...