No. Điều đó có nghĩa là ý nghĩa của nó-- không đồng bộ. Hiểu được sự khác biệt giữa lập trình không đồng bộ và lập trình dựa trên luồng là rất quan trọng đối với sự thành công của bạn với tư cách là một lập trình viên.
Trong môi trường truyền thống, không phải luồng, khi chức năng phải đợi sự kiện bên ngoài (chẳng hạn như sự kiện mạng, sự kiện bàn phím hoặc chuột hoặc thậm chí là sự kiện đồng hồ), chương trình phải chờ cho đến khi sự kiện xảy ra.
Trong môi trường nhiều luồng, nhiều luồng lập trình riêng lẻ đang chạy cùng một lúc. (Tùy thuộc vào số lượng CPU và sự hỗ trợ của hệ điều hành, điều này có thể đúng theo nghĩa đen, hoặc nó có thể là ảo tưởng được tạo ra bởi các thuật toán lập lịch trình phức tạp).Vì lý do này, môi trường đa luồng rất khó và liên quan đến các vấn đề của các luồng khóa bộ nhớ của nhau để ngăn chúng tràn ngập nhau.
Trong môi trường không đồng bộ, một luồng xử lý đơn lẻ sẽ chạy mọi lúc, nhưng có thể vì lý do hướng sự kiện (và đó là khóa), chuyển từ một hàm này sang hàm khác. Khi sự kiện xảy ra, và khi quá trình hiện đang chạy đạt đến điểm cần phải đợi sự kiện khác, lõi javascript sau đó quét danh sách sự kiện và phân phối sự kiện tiếp theo, trong (không chính thức) không xác định (nhưng có thể xác định) cho người quản lý sự kiện.
Vì lý do này, lập trình theo hướng sự kiện, không đồng bộ tránh được nhiều cạm bẫy của chương trình đa luồng, truyền thống, chẳng hạn như các vấn đề tranh luận về bộ nhớ. Vẫn có thể có các điều kiện chủng tộc, vì thứ tự các sự kiện được xử lý không tùy thuộc vào bạn, nhưng chúng hiếm và dễ quản lý hơn. Mặt khác, bởi vì trình xử lý sự kiện không cung cấp các sự kiện cho đến khi hàm hiện đang chạy chạm vào một vị trí nhàn rỗi, một số chức năng có thể bỏ đói phần còn lại của chương trình. Điều này xảy ra trong Node.js, ví dụ, khi mọi người ngu ngốc thực hiện rất nhiều phép toán nặng trong máy chủ-- đó là tốt nhất đẩy vào một máy chủ nhỏ mà nút sau đó "chờ đợi" để cung cấp câu trả lời. Node.js là một tổng đài nhỏ tuyệt vời cho các sự kiện, nhưng bất cứ điều gì mất nhiều thời gian hơn 100 mili giây sẽ được xử lý theo cách của máy khách/máy chủ. Trong môi trường trình duyệt, các sự kiện DOM được coi là các điểm sự kiện tự động (chúng phải là, thay đổi DOM mang lại nhiều sự kiện), nhưng ngay cả Javascript có thể làm hỏng lõi, đó là lý do tại sao cả Firefox và Chrome có những "tập lệnh này đã ngừng phản hồi" các trình xử lý ngắt.
Không, asynchronicity (ism?) Không * không * yêu cầu song song. –
dưới bìa có chủ đề, nhưng như là một người lập trình/ngôn ngữ người tiêu dùng nó không. – Jason
@ Jason không có chủ đề nào nằm trong trang bìa. Hoặc ít nhất là không cần phải thế. – Raynos