Tôi biết một có thể splice
một mục ra khỏi một mảng hoặc xóa nó bằng delete
. Cách tiếp cận trước đây có thể gây ra các vấn đề tương tranh, ví dụ: nếu một sợi đang đi qua mảng trong khi một sợi chỉ vừa mới dịch chuyển hoặc ghép. delete
không có vấn đề này nếu forEach
được sử dụng trên mảng, vì forEach
sẽ đi qua các lỗ trong mảng.Xóa mảng an toàn chủ đề
Tuy nhiên, mảng không thể tiếp tục phát triển mãi mãi và sẽ cần quét, có khả năng gây ra cùng một vấn đề như trong trường hợp ghép nối. Âm thanh như tôi cần khóa, nhưng tôi sẽ thích thú nếu Javascript có bất kỳ cơ sở nào cho nó. Có suy nghĩ gì không?
JavaScript không hỗ trợ chủ đề, ngoại trừ một tính năng HTML5 gần đây (và điều đó không cho phép chia sẻ mảng) – Dave
Bạn có thể hiển thị cho chúng tôi ví dụ về hai "chuỗi" đang cố gắng truy cập một mảng cùng một lúc không? Không nên với JavaScript – Bergi
@Bergi "nên"? –