Почти всегда в процессе написания кода программисты стараются избежать любых возможных проблем, что приводит к непомерному удорожанию ПО. Однако бывает и обратная ситуация, когда нотка авантюриста в одном месте не даёт программисту сидеть спокойно и он хочет реализовать ту или иную ошибку. Одной из таких ошибок является DeadLock - ситуация, когда два и более процессов не могут высвободить заблокированный ресурс и циклично требуют ресурсы друг у друга. Так как же получить DeadLock? Условия получения DeadLock: 1. Условие взаимного исключения. Каждый ресурс в данный момент или отдан ровно одному процессу, или доступен. Это значит, что из запрашиваемых ресурсов нет ни одного свободного. 2. Условие удержания и ожидания. Процессы, в данный момент удерживающие полученные ранее ресурсы, могут запрашивать новые ресурсы. Например, если выводится на печать документ из сети может быть реализована схема с захватом сетевой подсистемы и системы принтера, при этом один из ресурсов всё равно будет за