Synchroniczne i asynchroniczne

Anonim

Synchroniczne kontra asynchroniczne

Synchroniczne i asynchroniczne to dwa duże słowa, które wydają się być zastraszające, ale są dość proste. Synchroniczne oznacza po prostu, że wszystkie zdarzenia występują w określonej kolejności czasowej, którą można przewidzieć. Pewne wydarzenie zawsze będzie następowało po innym i nie można ich zamienić. Asynchroniczny jest przeciwieństwem synchronicznego. W procesach asynchronicznych nie ma porządku czasowego. Niektóre zdarzenia mogą i często się zmieniają. Doskonałym przykładem synchronicznym jest muzyka. Każdy uczestniczący instrument musi być w rytmie z innymi, inaczej muzyka nie będzie brzmiała dobrze. Dla asynchronicznego dobrym przykładem byłby ruch. Pojazdy poruszają się z różną prędkością i często się przemieszczają obok siebie.

W większości zastosowań operacja synchroniczna jest niezbędna, ponieważ operacja asynchroniczna oznacza dosłownie chaos. Przykładem tego są koleje i lotniska. W tych scenariuszach ważne jest, aby wiedzieć, który pojazd jedzie pierwszy, aby uniknąć kolizji. Kolejność rzeczy jest starannie zaplanowana, aby ułatwić płynny przepływ, a zmiany w planie są nieliczne i odległe.

Chociaż często preferowane są operacje synchroniczne, w niektórych przypadkach nie jest to konieczne. Istnieją nawet przypadki, w których działanie synchroniczne może być szkodliwe dla celu. Przykładem, w którym operacja synchroniczna nie jest naprawdę potrzebna, jest przeglądanie Internetu. Przed wersją AJAX (asynchroniczne Javascript i XML) większość stron internetowych musi być w całości przeładowana, aby zmienić informacje w niewielkiej sekcji. Dzięki AJAX można teraz aktualizować tę część, pozostawiając resztę strony nietkniętą. Jest to korzystne, ponieważ mniejsza ilość danych musi zostać przesłana, a użytkownik nie musi znieść przez cały proces odświeżania strony. AJAX jest asynchroniczny, ponieważ aktualizacje strony nie są już synchronizowane.

W operacjach komputerowych operacje we / wy są obszarem, w którym synchroniczne działanie staje się szkodliwe. Operacja synchroniczna pod tym względem oznacza, że ​​procesor musi czekać na zapis lub odczyt danych, zanim będzie mógł kontynuować. Problem polega na tym, że urządzenia I / O, takie jak dyski twarde, a zwłaszcza dyskietki, które mają części mechaniczne, są bardzo wolne. Jeśli procesor musi poczekać na zakończenie pracy dysku, marnuje dużo czasu. Operacja asynchroniczna pozwala procesorowi robić inne rzeczy, czekając na zakończenie odczytu i zapisu i po prostu kontynuować, gdy operacja się powiedzie.

Streszczenie: Synchroniczne oznacza w kolejności czasu, podczas gdy Asynchroniczny oznacza brak kolejności czasu Synchroniczne jest preferowane zamiast asynchroniczne w wielu aplikacjach świata rzeczywistego Synchroniczny może działać gorzej w pewnych scenariuszach niż asynchroniczny