คำถามติดแท็ก synchronous

22
การประมวลผลแบบอะซิงโครนัสกับการซิงโครนัสหมายถึงอะไรจริง ๆ ? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน7 เดือนที่ผ่านมา ความแตกต่างระหว่างการดำเนินการแบบอะซิงโครนัสและการซิงโครนัสคืออะไร


10
ความแตกต่างระหว่างการเขียนโปรแกรมแบบซิงโครนัสและแบบอะซิงโครนัสคืออะไร (ใน node.js)
ฉันอ่านnodebeginner แล้วฉันก็เจอโค้ดสองชิ้นต่อไปนี้ คนแรก: var result = database.query("SELECT * FROM hugetable"); console.log("Hello World"); คนที่สอง: database.query("SELECT * FROM hugetable", function(rows) { var result = rows; }); console.log("Hello World"); ฉันได้สิ่งที่ควรทำพวกเขาค้นหาฐานข้อมูลเพื่อดึงคำตอบของแบบสอบถาม console.log('Hello world')แล้วก็ คนแรกคือรหัสซิงโครนัสที่คาดคะเน และอันที่สองคือรหัสอะซิงโครนัส ความแตกต่างระหว่างสองชิ้นนั้นค่อนข้างคลุมเครือสำหรับฉัน ผลผลิตจะเป็นอย่างไร Googling ในการเขียนโปรแกรมแบบอะซิงโครนัสไม่ได้ช่วยฉันเช่นกัน

4
jQuery: การดำเนินการร้องขอ AJAX แบบซิงโครนัส
ฉันเคยทำ jQuery มาแล้ว แต่ฉันติดอยู่กับเรื่องนี้อย่างสมบูรณ์ ฉันรู้เกี่ยวกับข้อดีข้อเสียของการใช้ ajax แบบซิงโครนัส แต่ที่นี่จะต้องใช้ โหลดเพจระยะไกล (ควบคุมด้วย firebug) แต่ไม่มีการแสดงผลคืน ฉันควรทำอย่างไรที่แตกต่างกันเพื่อให้ฟังก์ชันของฉันกลับมาอย่างเหมาะสม function getRemote() { var remote; $.ajax({ type: "GET", url: remote_url, async: false, success : function(data) { remote = data; } }); return remote; }
187 ajax  jquery  synchronous 

10
จะตัดการเรียกฟังก์ชัน async ลงในฟังก์ชัน sync ใน Node.js หรือ Javascript ได้อย่างไร
สมมติว่าคุณรักษาห้องสมุดที่ exposes getDataฟังก์ชัน ผู้ใช้ของคุณเรียกสิ่งนี้ว่ารับข้อมูลจริง: ข้อมูล var output = getData(); Under the hood จะถูกบันทึกไว้ในไฟล์เพื่อให้คุณใช้งานgetDataโดยใช้ Node.js ในfs.readFileSyncตัว เห็นได้ชัดทั้งคู่getDataและfs.readFileSyncเป็นฟังก์ชันการซิงค์ วันหนึ่งคุณได้รับคำสั่งให้เปลี่ยนแหล่งข้อมูลพื้นฐานเป็น repo เช่น MongoDB ซึ่งสามารถเข้าถึงได้แบบอะซิงโครนัสเท่านั้น นอกจากนี้คุณยังได้รับคำสั่งให้หลีกเลี่ยงการทำให้ผู้ใช้ของคุณgetDataขุ่นเคืองไม่สามารถเปลี่ยน API ให้กลับมาเป็นเพียงคำสัญญาหรือเรียกร้องพารามิเตอร์การเรียกกลับ คุณมีคุณสมบัติตามข้อกำหนดทั้งสองอย่างไร ฟังก์ชันอะซิงโครนัสโดยใช้การเรียกกลับ / สัญญาคือ DNA ของ JavasSript และ Node.js แอป JS ที่ไม่สำคัญใด ๆ อาจจะเต็มไปด้วยรูปแบบการเข้ารหัสนี้ แต่การปฏิบัตินี้สามารถนำไปสู่สิ่งที่เรียกว่าปิรามิดแห่งการลงโทษได้อย่างง่ายดาย ยิ่งไปกว่านั้นหากรหัสใด ๆ ในผู้โทรใด ๆ ในสายการโทรขึ้นอยู่กับผลลัพธ์ของฟังก์ชัน async รหัสเหล่านั้นจะต้องถูกรวมไว้ในฟังก์ชันการโทรกลับเช่นกันซึ่งเป็นการกำหนดข้อ จำกัด รูปแบบการเข้ารหัสสำหรับผู้โทร ในบางครั้งฉันพบว่าจำเป็นต้องห่อหุ้มฟังก์ชัน async …

8
วิธีที่ง่ายที่สุดในการรอให้งานอะซิงโครนัสบางอย่างเสร็จสมบูรณ์ใน Javascript?
ฉันต้องการทิ้งคอลเลคชัน mongodb แต่เป็นงานแบบอะซิงโครนัส รหัสจะเป็น: var mongoose = require('mongoose'); mongoose.connect('mongo://localhost/xxx'); var conn = mongoose.connection; ['aaa','bbb','ccc'].forEach(function(name){ conn.collection(name).drop(function(err) { console.log('dropped'); }); }); console.log('all dropped'); คอนโซลจะแสดง: all dropped dropped dropped dropped อะไรคือวิธีที่ง่ายที่สุดในการทำให้แน่ใจว่าall droppedจะพิมพ์ออกมาหลังจากที่คอลเลกชั่นทั้งหมดถูกทิ้ง? สามารถใช้บุคคลที่สามเพื่อลดความซับซ้อนของรหัสได้
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.