Paralel Akım Akım nedir? Basit dilinde akımlar işlem hirarşileridir. Her bir işlem hirarşisi kendi içine kapalı bir akımdır. Standart olarak sadece bir tek akım çalışır. Bu akımda
Başlat Prosedürü ile başlayan ilk akımdır.
Fakat profesyonel yazılım geliştirmede paralel akımlar, yani ana-akım yanısıra, onunla birlikte hareket eden, ama ana-akımdan bağımsız olan, ek akımlarda kodlamak mümkün olmalıdır. Zaman zaman gereklidir. Bu gibi paralel akımları Basit ile kodyalabilirsin.
Paralel akımlar global birimde tanımlanan değişken, dizilim, işaret ve prosedürbağlarını kapsamaktadır ve ayrıca paralel çalışacak prosedür tanımı sunmaktadır. Objesel global, modüler global veya lokal birimlerde paralel tanımlamalar yapılamaz!
Global birimde paralel olarak tanımlanan bir değişken, her akımda ayrı ayrı global birimde sunulur. Yani akım A´da bulunan aynı değişken tanımı ile akım B´de bulunan aynı değişken akımı farklı adreslerdir. Birbirleriyle bir alakaları yoktur.
Örnek:
Dizilim Metin a ? a değişkeni tüm akımlar için aynıdır
Paralel Dizilim Metin b ? b değişkeni her akım için farklıdır
Paralel olarak tanımlanan bir prosedür çalıştırıldığı andan itibaren, kendisini çalıştıran akıma bağlı olarak değil, ayrı bir akım olarak çalışmaya başlar
. Yalnız Basit en fazla
256 adet akım paralel çalıştırabilir
. Birinci akım ana
-akım olduğuna göre,
255 adet yanısıra akım çalıştırılabilir
. Limite ulaşıldığında, çalıştırılması istenen prosedür çalışmaz, onun yerine bir uyarı gelir
. Örnek
:
Paralel Prosedür ikinciAkım ()
...
ProsedürSon
Paralel akım olarak tanımlanan prosedürlerin diğer prosedürlerden hiçbir farkı yoktur
. Sadece çalıştırıldıkları andan itibaren, paralel akım olarak çalışırlar
. Aynı prosedürden birden fazla paralel akım çalıştırılabilir
:
ikinciAkım() ? Birinci paralel akım
ikinciAkım() ? İkinci paralel akım
Yukarıdaki örneğe göre en az üç akım var
: Ana akım, birinci ve ikinci paralel akımlar
. Paralel akımlar ayrıca ParalelAkım modülüylede çalıştırılabilir
. Bu yöntemle paralel akım olarak tanımlanmamış bir prosedür yinede paralel akım olarak çalıştırılabilir
:
Prosedür herhangiProsedür ()
...
ProsedürSon
Prosedür Başlat ()
ParalelAkım.Çalıştır( herhangiProsedür )
ProsedürSon
Eğer çalıştırılmak istenen prosedürün parametreleri varsa, o halde şöyle girilir
:
Prosedür herhangiProsedür ( Rakam a; b; c )
...
ProsedürSon
Prosedür Başlat ()
ParalelAkım.Çalıştır( herhangiProsedür; 3; 5; 7 )
ProsedürSon
Paralel akım olarak çalıştırılan bir prosedür geriye sonuç vermez
. Sonuç verilmek istendiği zaman, bu işlem etkisiz kalır
. Böyle bir prosedür çalıştırılırken sadece akım nosunu geri verir
. Akım nosu üzerinden akımın kimliği öğrenilir ve böylece akımı, kendisi sonlanmadan, uygulamanın herhangi bir prosedürü üzerinden, başka akımdan olmak üzere sonlandırabilirsin
. Örnek
1:
Paralel Prosedür ikinciAkım ( Rakam a; b ) Bayttır
...
ProsedürSon
Prosedür Başlat ()
Değişken Bayt akımKimlik
akımkimlik = ikinciAkım( 5; 8 )
Yoket akımkimlik
ProsedürSon
Örnek
2:
Prosedür herhangiProsedür ( Rakam a; b; c )
...
ProsedürSon
Prosedür Başlat ()
Değişken Bayt akımKimlik
akımKimlik = ParalelAkım.Çalıştır( herhangiProsedür; 3; 5; 7 )
Yoket akımkimlik
ProsedürSon
Eğer akım nosunu global birimde bir değişkene kaydedersen, akımın kendi içinden de kendisini sonlandırabilirsin
:
Değişken Bayt akımKimlik
Paralel Prosedür ikinciAkım ( Rakam a; b ) Bayttır
Yoket akımkimlik
ProsedürSon
Prosedür Başlat ()
akımkimlik = ikinciAkım( 5; 8 )
ProsedürSon