in reply to A per-instance shared queue among forked child processes?

It looks like BEGIN EXCLUSIVE TRANSACTION should do essentially the same thing as I was using a named lock for, explicitly preventing other processes from reading/writing until the transaction is ended.

As SQLite has support for transactions, when writting the script inside Re^4: A per-instance shared queue among forked child processes? I use them but then I found that too many of them failed due to collisions so I change the code to use an additional atomic reserve step.

Now, it...

  1. looks for some element from the queue,
  2. tries to atomically reserve it and
  3. deletes it
  • Comment on Re: A per-instance shared queue among forked child processes?