Chat with our AI personalities
When using threads, the entire point of a reader/writer problem is to avoid deadlock and starvation. The only way to avoid deadlock or starvation without the use of semaphores is for there to be only one possible process that could run, that is one reader and one writer only.
A Deadlock is a situation of indefinite waiting where the system is stuck at a particular point and would do nothing useful. For example Method A is waiting for B's input while B is waiting for C's input and C in turn is waiting for A's input. Here all the 3 methods would continue to wait because they are waiting on one another and the system is stuck. A deadlock usually occurs while using threads. Threads can lock objects on which they are processing and when multiple threads are waiting for the same object a Dead lock may occur. The use of the synchronize keyword can be used to avoid such deadlock situations.
Introduction to Algorithms was created in 1990.
deadlock avoidance
Translating algorithms (such that a machine can understand them) is known as programming.