area515 / Photonic3D

Control software for resin 3D printers
http://photonic3d.com
GNU General Public License v3.0
133 stars 115 forks source link

Eliminate lost update problem in highly concurrent situations #151

Open WesGilster opened 8 years ago

WesGilster commented 8 years ago

On the printer controls and print job screens, you should find that CWH "hides" this problem since it attaches a web socket to the currently edited printer and updates changes to the screen based on what others are doing. It may come as a surprise that this immediate level of communication doesn't actually solve the lost update problem, it hastens it.The solution is pretty simple, we just add a version in the file and ensure that version is the same as what we started editing.