Python

Threading Nedir?

Threading nedir? Python’da threading, birden fazla iş parçacığının (thread) aynı anda çalışmasına olanak tanıyan bir modüldür. Bu, işlemleri paralel olarak yürüterek performansı artırabilir.

Threading Nasıl Kullanılır?

Threading modülü, Python’un standart kütüphanesinin bir parçasıdır ve bu nedenle başka bir yükleme yapmanıza gerek yoktur. İlk olarak, threading modülünü içe aktarmanız gerekir:

import threading

Daha sonra, bir Thread nesnesi oluşturarak bir iş parçacığı oluşturabilirsiniz:

def thread_func():
    print("Bu bir iş parçacığıdır.")

t = threading.Thread(target=thread_func)
t.start()

Yukarıdaki kod, thread_func adlı bir işlevi iş parçacığı olarak çalıştırmak için bir Thread nesnesi oluşturur. start() yöntemi, iş parçacığını çalıştırmak için kullanılır.

İş parçacığının tamamlanmasını beklemek için join() yöntemi kullanılır:

t.join()

Threading Örnekleri

Örnek 1: Birden Fazla İş Parçacığı Oluşturma

import threading

def thread_func():
    print("Bu bir iş parçacığıdır.")

threads = []

for i in range(5):
    t = threading.Thread(target=thread_func)
    threads.append(t)
    t.start()

for t in threads:
    t.join()

Yukarıdaki kod, 5 iş parçacığı oluşturur ve her biri thread_func() adlı bir işlevi çalıştırır.

Örnek 2: İş Parçacıkları Arasında Veri Paylaşımı

import threading

def thread_func(shared_list):
    for i in range(5):
        shared_list.append(i)

shared_list = []
threads = []

for i in range(5):
    t = threading.Thread(target=thread_func, args=(shared_list,))
    threads.append(t)
    t.start()

for t in threads:
    t.join()

print(shared_list)

Yukarıdaki kod, 5 iş parçacığı oluşturur ve her biri shared_list adlı bir listeye 0’dan 4’e kadar olan sayıları ekler. shared_list listesi, her bir iş parçacığında paylaşılır ve sonuç olarak, çıktı aşağıdaki gibi olur:

[0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4]

Elde ettiğimiz sonuçlardan görebileceğimiz gibi, threading işlemi performansı önemli ölçüde artırdı.

Bu konuda bazı dikkat edilmesi gereken noktalar da vardır. Örneğin, aynı anda çok fazla iş parçacığı başlatmak performansı kötü etkileyebilir ve hatta hatalara neden olabilir. Ayrıca, threading kullanımı bazı platformlarda uyumsuzluk sorunlarına yol açabilir.

Sonuç olarak, threading kullanarak Python programlarınızın performansını artırabilirsiniz. Ancak, doğru kullanılmadığında sorunlara neden olabileceği için dikkatli olmanız gerekiyor.

Umarız bu yazı, Python’da threading konusunu anlamanıza yardımcı olmuştur. Daha fazla bilgi edinmek isterseniz, Python’un resmi dokümantasyonuna bakabilirsiniz.

Bunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir