..


Sponsor Bağlantılar

C Eşzamanlı programlama + +

Stefano Cancedda tarafından yazılmış Makale
6 Sayfa 1

Ardışık programlama hiçbir varyasyonlarla, talimatları her zaman için yürütülen bir garanti sunuyor. Sonuçta ortaya çıkan davranış deterministic: Aynı girişleri ekleme, çıkış aynı sonucu elde edilir.
Her bir program için işletim sistemi çalıştıran bir korumalı bellek alanı sağlayan bir süreç oluşturur. Bu bağımsız işlemi hatasız aynı anda çalışıp çalışmadığını imkanı sağlar.

(Ve daha gelişmiş) Farklı eşzamanlı programlama. Kuşatma tanıtılması ve daha önce nasıl çalıştığını, benim görüşüme göre, nesne belirli bir tür çekirdek iplik denir.

Nesneleri Çekirdek konuları işletim sistemi tarafından yönetilen, iki temel özelliği var gibi:

  • Her konu kendi yığın, özel durum bilgileri, çalıştırılacak bir sonraki komutu saklayan bir özel veri yapısı vardır;
  • Tüm süreç bir ortak bellek alanı ile her iş parçacığı paylaşmaktadır.
Konu kullanımı yürütme açısından birçok avantajı vardır. Özellikle, tam şu anda kişisel bilgisayarlar için piyasada baskın teknoloji olarak çok çekirdekli işlemci performansı, istismar. Modern uygulamalar belli bir karmaşıklık sıralı bir şekilde tasarlanmış olması düşünülemez, bu nedenle makine sağladığı çekirdek sadece bir, zaman yararlanabilir.

Başka bir avantaj olarak, iki farklı süreç değişik parametrelerle birlikte, belki de aynı kod çalıştırma gibi görülebilir, doğrudan paylaşımlı bellek yararlanabilir iki konuları daha az verimlidir. Birkaç kez aynı programı çalıştırmak istiyorsanız, konuları desteklemeyen bir sistemde, aynı programa göre daha fazla iş oluşturmanız gerekir. Bu teknik çalışır ancak kaynaklarının savurgan ve yavaştır.

Bu G / Ç blokerleri denilen eğer Üçüncü olarak, konuları avantajı var: yerine algoritma yürütme durdurma kullanıcı tarafından tetiklenen olay için bekleyen, yeni bir konu başlatmak ve gereksiz kesintiler önleyebilir Bu genel performans kötüleşir.

Eşzamanlı programlama aksine çıktı ortak bellek neden hataları rasgele kere önlemek için temel olan senkronizasyon yapıları, destek gerekir. Ayrıca hataların bir dizi programcı çünkü deterministik programının beklenmedik davranış genellikle kötü beslenen ortaya koyar.

Bunun yanı sıra, senkronizasyon yapıları rakip yürütülmesinde adalet sağlamak için bu yapıları tarafından oluşturulan beklentileri nedeniyle belirli bir performans kaybına kodlarını çalıştırmak için gerekli makine zaman açısından hem de bir maliyeti var.

Rekabet yönetimi izin ana nesneler aşağıda öngörülen ve aşağıdaki paragraflarda ayrıntılı olarak açıklanmıştır:

  • Uçucu elemanlar
  • Iç içe İşlevleri
  • Trafik ışıkları
  • Kritik bölümler
  • Etkinlikler
  • Zamanlayıcı
  • Mutex
Bu unsurların her biri basit sorunları belirli bir sınıf çözmek için doğal bir şekilde uygun. Daha karmaşık sorunlar için sadece bir doğru sonuç ve en erken ve üstü olarak tanımlanan sorunlardan biri kullanımını gerektiren sorunların çözümünde tatmin edici geçiş almak için birlikte bu nesneler birleştiren bir komplekstir son derece kritik. Kolayca sonucun doğruluğunu garanti çözüm bulamıyor çünkü, en kötü durumda bir yeterince yüksek performans elde çünkü senkronizasyon nesnelerinin birleşimi, en iyi, karmaşık olabilir. En az değil en kötü durum: orada ölümcül bir hata olduğunu ve hemen tespit etmedi. Bu noktada, çünkü biz tartışacağız konuların hassasiyeti hem de çok sık hata ayıklama her zaman eş zamanlı bir ortamda sorunlu olduğu gerçektir, akar aslında belirleyici yürütme, programın her yürütme, sıralanmıştır işlemci operasyonlar her zaman farklı bir performans sergiliyor.

Aynı Kategoride ...
E-Öğrenme
ASP ile E-ticaret (Ebook) ASP ile E-ticaret (Ebook)
ASP ile E-ticaret ve Alışveriş Sepeti. Sadece 35 €.
Web Pazarlama (Ders) Web Pazarlama (Ders)
Site tanıtım, arama motorları ve pazarlama. En düşük € 39.
XML (Ders) XML (Ders)
XML yapıları, XSL ve diğer dillerde genişletilebilir oluşturulması. 29 € dan başlayan fiyatlarla.
Sponsor Bağlantılar