Deadlock

#table308#
Table: Deadlock

The order of required resources for the order of execution of two or more tasks is such that neither can proceed, as in figure<#314#>tb:dead<#314#>. Going back to the example of the printer spooler: Add ;SPM_quot;file;SPM_quot; to printer queue - succeeds returns q# or fails Remove q# from queue - succeeds, returns ok, or q# not in queue List queue If A grabs the spool area to add something to the queue, while B grabs the queue to delete something, then A and B will deadlock waiting for the other resource. We will see in chapter 3 how transactions can help with this synchronization problem.