Я узнал, что у процесса есть состояния работает, готов, заблокирован и приостановлен. Потоки также имеют эти состояния, за исключением состояния приостановки, потому что они находятся в адресном пространстве процесса.
Процесс блокируется большую часть времени, когда он выполняет блокирующий ввод-вывод или ожидает события.
Я могу легко представить блокировку процесса, если он однопоточный или следует модели «один ко многим», но как это работает, если процесс многопоточный?
Например:
У меня есть процесс с двумя потоками в системе, которая следует модели один к одному. Один обрабатывает графический интерфейс, а другой — блокирующий ввод-вывод. Я знаю, что процесс остается отзывчивым, потому что другой поток обрабатывает ввод-вывод.
Так есть ли шанс, что процесс блокируется, или я должен просто исключить это в этом случае?
Я только начинаю вникать в эти вещи, так что простите меня, если я еще не понял некоторых важных деталей.