Chính xác-một lần và ngữ nghĩa tại hầu hết-một lầnBằng cách sử dụng ổ khóa cho nhiệm vụ (như với trường hợp của cuộc bầu cử tổng thể) là không đủ để tránh việcnhiệm vụ thực hiện nhiều lần vì chúng tôi có thể có, ví dụ, kế vị sausự kiện:1. tổng thể M1 đặt nhiệm vụ T1 công nhân W1.2. W1 mua lại khóa cho T1, thực hiện nó, và phát hành các khóa.3. chủ M1 nghi ngờ rằng W1 đã rơi và reassigns nhiệm vụ T1 cho nhân viên W2.4. W2 mua lại khóa cho T1, thực hiện nó, và phát hành các khóa.Ở đây, khóa trên T1 không ngăn cản việc đang được thực hiện hai lần vì cáchai công nhân đã không interleave bước của họ khi thực hiện nhiệm vụ. Để đối phó với trường hợptrong đó chính xác-một lần hoặc tại hầu hết-một lần ngữ nghĩa được yêu cầu, một ứng dụng dựa trêncơ chế cụ thể đối với bản chất của nó. Ví dụ, nếu dữ liệu ứng dụng có dấu thời gianvà một nhiệm vụ là nghĩa vụ phải sửa đổi dữ liệu ứng dụng, sau đó là một thực hiện thành côngcác nhiệm vụ có thể là điều kiện về giá trị dấu thời gian của dữ liệu nó chạm. Cácứng dụng cũng cần khả năng quay trở lại một phần thay đổi trong trường hợp mà các ứng dụngnhà nước chưa sửa đổi atomically; Nếu không, nó có thể kết thúc với một không phù hợpnhà nước.Điểm mấu chốt là rằng chúng tôi đang có cuộc thảo luận này chỉ để minh họa cho những khó khănvới việc thực hiện các loại ngữ nghĩa cho các ứng dụng. Nó không phải là trong phạm vicủa cuốn sách này để thảo luận chi tiết thực hiện những ngữ nghĩa
đang được dịch, vui lòng đợi..
