If-Match: how HTTP stops two editors clobbering each other
How the If-Match header and strong entity tags implement optimistic locking, so a slower editor can't silently overwrite a faster one.
Topic · 17 stories
17 stories tagged concurrency on AI Tamer, newest first.
How the If-Match header and strong entity tags implement optimistic locking, so a slower editor can't silently overwrite a faster one.
One blocking call in a Tokio task can stall every other task on that thread. How to recognise blocking work, when spawn_blocking is the answer, and when a dedicated thread is the better one.
Marco Bambini's sqlite-multiwriter, a VFS extension created 8 October 2026, claims concurrent writers on one SQLite file. The 5.7x and 3.0x figures are the project's own runs.
PostgreSQL prevents certain cross-row anomalies by aborting a Serializable transaction. Applications must replay the entire decision, including its reads.
A preflight SELECT cannot decide whether a concurrent insert conflicts. Design the unique key first, then let PostgreSQL arbitrate each proposed row.
A concurrency group can cancel a waiting GitHub Actions run when a newer one arrives. Here is how to keep a queue when each run matters.
A poisoned Rust mutex signals that a thread panicked while holding the lock. Recovery starts with checking the shared state’s invariants.
Rust scoped threads can borrow local data because the scope joins them before returning. A small example shows where the borrowing boundary sits.
A Rust receiver can keep waiting after the workers finish if a sender is still alive. Here is how to close the channel and let the receive loop end.
A standard mutex works well for short updates in async Rust. Learn when holding its guard across an await can deadlock, and when Tokio’s async mutex is worth its cost.
A model can request several functions in one turn. The application must decide how to schedule them, match their results, and handle partial failure.
Use Rust’s OnceLock to share a lazily initialized model client across threads. Learn what happens when initialization panics and when a failed result is stored.
A model can move to a worker thread even when its fields prevent shared references from crossing threads. The choice changes how requests reach it.
SKIP LOCKED helps competing workers claim jobs without waiting. The same behavior can make an ordinary query silently omit rows it would otherwise find.
Two tabs can start the same sync at once. Web Locks lets them coordinate the work within one browser, with clear limits for retries and work beyond that browser.
When one task in a Python TaskGroup fails, its siblings receive cancellation requests. The group waits for them and reports the failures together.
PostgreSQL can coordinate workers that request the same advisory lock. The application must decide where to request it and protect work that outlives the lock.