Birden fazla (diyelim) ajax çağrıları yaptığım bir durum var (AngularJS http get'i kullanarak, eğer önemliyse) ve her bir aramayı geri çağırmak ve bir sayacı arttırmak istiyorum, böylece ne zaman (4) iş parçacığı tamamlandı.Tarayıcıda JavaScript'te eşzamanlı bir okuma/yazma okuma/yazma çarpması mümkün mü?
Yazıcım, Java'nın "senkronize" veya "uçucu" anahtar kelimelerle karşılaştırılabilir bir şeye sahip olmadığı için, birden fazla eşzamanlı iş parçacığının bir sayacı artırma sırasında çarpışmasının mümkün olacağı ve böylelikle bazı artışların eksik olacağıdır. Diğer bir deyişle, iki iş parçacığı aynı anda gelir ve her ikisi de aynı değeri (örneğin, 100) alarak sayaçları okur. Sonra her iki iş parçacığı (101'e) artırır ve yeni değeri saklar ve bir sayıyı (102 yerine 101) kaçırdık!
JavaScript'in tek iş parçacıklı olması gerektiğini biliyorum, ancak istisnalar var.
Tarayıcıda bu durum mümkün mü ve eğer öyleyse, buna karşı korunmanın bir yolu var mı?
Sözler nedeniyle bir sayaç gerek yok. $ Q.all() 'a bir göz atın. $ $ $ bir söz verir ve bir dizi sözler sarılabilir ve hepsi tamamlandığında, AFAIR, ben asla bir cevap bekliyorum – charlietfl
tamamlandığında bitmiş çağrı! iyi soru! – shaheer
@mplungjan çok yavaş olur – shaheer