Öyleyse, çocuklar, şimdi tartışmamıza ipliklerin tam olarak ne olduğunu anlama tartışmasıyla başlayalım.
Yani bir iş parçacığı hiçbir şey değildir, ancak yürütme akışının temel birimidir, değil mi?
Ve bir sürecin en az bir iş parçacığı vardır ve bu iş parçacığını ana iş parçacığı olarak adlandırırız.
Dolayısıyla, çalıştırılabilir bir program olan yazdığınız herhangi bir programın en az bir işlevi olduğunu ve bu
işleve main dendiğini zaten biliyoruz, değil mi?
Başka bir deyişle, bir programın en az bir iş parçacığı olduğunu ve bu iş parçacığının ana iş parçacığı olduğunu söyleriz.
Ana işleviniz bir ana iş parçacığı olarak çalışır, değil mi?
Ana işleviniz bir ana iş parçacığı olarak çalışır.
Doğru.
Yani yürütme akışı hiçbir şey değildir, ancak yürütülen bağımsız bir talimatlar kümesidir.
Bir iş parçacığı bir süreç bağlamında çalışır, değil mi?
Yani bir süreciniz olmalı.
P ve P sürecinin iş parçacığı içermesi.
Artık bir P sürecinin en az bir iş parçacığı olduğu ve buna ana iş parçacığı denildiği açıktır.
Değil mi?
Yani tek başına bir iplik mevcut değildir.
İş parçacığının var olabilmesi için sürecin var olması gerekir.
Başka bir deyişle, süreç hiçbir şey değildir, ancak sadece bir ana iş parçacığıdır.
Yani bir iş parçacığı oluşturmak için önce bir süreç oluşturmanız gerekir, değil mi?
Ve bir sürecin ana iş parçacığı olarak adlandırılan en az bir iş parçacığı vardır.
Bir iş parçacığı başka iş parçacıkları oluşturabilir.
Diğer konu başlıkları daha fazla konu başlığı oluşturabilir ve bu böyle devam eder.
Dolayısıyla herhangi bir sınırlama ya da temel yoktur.
Değil mi?
İlk iş parçacığının oluşturulması ana iş parçacığından başlar, değil mi?
Bunun ana konunuz olduğunu görebiliyorsunuz, değil mi?
Ve ana iş parçacığının bir noktasında, diyelim ki bu nokta F olsun, ana iş parçacığının T2 adında başka bir iş parçacığı
oluşturduğunu varsayalım.
Değil mi?
Dolayısıyla, f noktasından sonra, yeni bir bağımsız yürütme akışı oluşturulur ve bu yürütme akışı T2 iş parçacığından
başka bir şey değildir.
Yani herhangi bir sınırlama yoktur.
Ana iş parçacığınız, alt iş parçacığınızın yanı sıra istediği kadar iş parçacığı oluşturabilir.
Konu bu.
T2 ayrıca istediği kadar iş parçacığı oluşturabilir.
Örneğin, t2 iş parçacığının yürütme akışındaki bir nokta olan F bir noktasında T2 iş parçacığının daha
fazla iş parçacığı oluşturmaya karar verdiğini varsayalım, değil mi?
Dolayısıyla, f noktasında başka bir T3 iş parçacığının oluşturulduğunu görebilirsiniz, değil mi?
Benzer şekilde, T3 iş parçacığı da daha fazla iş parçacığı oluşturabilir.
Hangi iş parçacığının iş parçacığı oluşturabileceği konusunda kesinlikle hiçbir sınırlama veya temel yoktur.
Programınızdaki herhangi bir iş parçacığı daha fazla iş parçacığı oluşturabilir.
Yeni bir iş parçacığının oluşturulduğu noktaya çatal noktası denir.
Doğru.
Dolayısıyla f noktası ve f bir noktası çatal noktaları olarak adlandırılır.
Bunlar, ana iş parçacığı tarafından yeni bir iş parçacığının oluşturulduğu noktalardır.
Doğru.
Yeni bir iş parçacığı oluşturan iş parçacığına ana iş parçacığı, oluşturulan iş parçacığına ise alt iş parçacığı
denir.
Doğru.
Şimdi bir sonraki ders videosunda, Hello World Multithreaded programımızı hızlıca oluşturalım.