Web sitesi tabanlı tarayıcılarda web sql veritabanı api kullanmaya çalışıyorum. ana ve web çalışanı web çalışanı async api'u kullanıyorum. Her iki iş parçacığı aynı veritabanına erişir (bildiğiniz gibi sqlite yetersizliği)html5 içinde hangi yerel depolama güvenli bir şekilde tarayıcı kullanıcı arabiriminde ve web çalışanı
Her şey iyi davranır, ancak zaman zaman işlemler kaybedilir veya bir işlem başarısız olur ve bir zamanlama/yarış durumu gibi görünür. Alttaki sqlite veritabanına erişim görünür, iş parçacığı güvenli değildir.
Biraz daha fazla arka plan. Web çalışanım, basitçe, ana kullanıcı arayüzünden eklenen bir kayda sahip olabilecek bir tabloya karşı bir sorgu yürütüyor.
Gerçekten de herhangi bir yerde belgelenmiş olup olmadığını araştırıyor yerel/web depolama hem ui iş parçacığı hem de web çalışan iş parçacığı güvenli bir şekilde erişilebilir? Ben indexeddb api iş parçacığı güvenli bir yere okudum ama bu benim için tarayıcı desteği zayıf/var olmayan tarayıcılar için hedefleme beri bana yardımcı olmaz (en azından ben öyle düşünüyorum - bilgi almak
) http://caniuse.com den herhangi anlayışlar minnetle
Hatta olası çalışan iş parçacığı yerel depolama erişmek için bilmiyordum? Http://stackoverflow.com/questions/6179159/accessing-localstorage-from-a-webworker –
Evet, belki de doğru. WEB SQL veritabanlarına çalışan iş parçacığından erişilebildiğinden hatalı varsayım yapmış olabilirim. Ne yazık ki, tarayıcı web tarayıcısı ve web çalışanı 2'den aynı web sql veritabanını açtığınızda iş parçacığı güvenli görünmüyor. – paul
WebSQL kullanımdan kaldırıldı - bu yüzden onu kullanmak istemediğini tahmin ediyorum (iş parçacığı güvenli olsa bile). Yakında webWorkers'da indexedDB desteğimiz olacak. –