Forum

Task paralel librar...
 
Bildirimler
Hepsini Temizle

Task paralel library(TPL ) vs MultiThread

3 Yazılar
2 Üyeler
0 Likes
1,173 Görüntüleme
(@muratguler)
Gönderiler: 313
Honorable Member
Konu başlatıcı
 

Merhaba

Uwp üzerinde uygulama geliştirirken threadler kulllanılmıyor. TPL multithread gibi mi çalışıyor yoksa asenkron gibi mi çalışıyor. Eğer asenkron gibi ise multithread şeklinde nasıl çalıştırabilirim. Birden çok işlemi aynı anda yapıyorum. Programın bazı kısımlarında program duruyor. Bu sorunu nasıl giderebilrim ? 

 

Teşekkürler

 
Gönderildi : 13/03/2018 14:01

(@aliuysal)
Gönderiler: 292
Üye
 

TPL ile bir görevin tamamlanmasını veya iptal olmasını beklersiniz, bu işlemler gerçekleşmeden veya belirli bir timeout koyup devam etmesini sağlamadan program beklemede kalır. 

UWP debirden çok işlemi yaptırmak için asenkron (async) kullanmanız gerekir zaten. 

Örnekte verilen butona basıldığında arkada işlem yapılırken aynı zamanda web sayfasında başak işlemlerinde yapılmasına izin verilmesi gibi.

 

https://docs.microsoft.com/en-us/windows/uwp/threading-async/call-asynchronous-apis-in-csharp-or-visual-basic

 

Dijital dönüşüm başlıyor...
RFID Sayım
WinFlow e-Fatura Onay Akış Süreç Yazılımı
Android El Terminali
Elektrikli Araç Şarj Yazılım Platformu
RFID Demirbaş
QrCode Api

 
Gönderildi : 14/03/2018 12:48

(@muratguler)
Gönderiler: 313
Honorable Member
Konu başlatıcı
 

Merhaba Ali Bey 

Ben bu konuyu öğrenmek için birden fazla örnek inceledim. Yanılmıyorsam eğer birden çok işlemi yaptırmak için TPL kullanmak lazım. Zaten bu linkte de burak bey detaylı anlatmış yaklaşık 30 örnekle (  http://www.buraksenyurt.com/?tag=task+parallel+library  ) 

Asenkron çalışmada da zaten Task kullanılıyor oluşturuluyor metotlar. Asenkron çalışma şekli kısaca şu 

Task MetotAdı()

{

         return Task.Run(()=>{        // çalıştırılacak olan kodlar   }) ;

}

 

 

public async void BaskaMetotAdı(){

        await MetotAdı();

}

 

 

Burada baskaMetotAdını istediğiniz yerden kullanabilir işlemlerinizi asenkron olarak yapabilirsiniz. Fakat asenkron olarak çalışmak çalışma anında zaman paylaşımı yaptırıyor. Zaman paylaşımı olmadan farklı threadler üzerinde çalışmak için de TPL kullanmak lazım yani. 🙂

 

 
Gönderildi : 04/04/2018 19:52

Paylaş: