Главная /
Язык программирования Python /
Что делает следующая программа? import threading, Queue item = Queue.Queue() def consumer(nm): while True: print item.get(), nm def producer(nm): while True: item.put(nm) for n in range(3): threading.Thread(target=consumer, args=("c"+str(n),)).start() thr
Что делает следующая программа?
import threading, Queue
item = Queue.Queue()
def consumer(nm):
while True:
print item.get(), nm
def producer(nm):
while True:
item.put(nm)
for n in range(3):
threading.Thread(target=consumer, args=("c"+str(n),)).start()
threading.Thread(target=producer, args=("p"+str(n),)).start()
вопрос
Правильный ответ:
программа ничего не делает или, в некоторых случаях, успевает напечатать несколько строк вида
pN cM
, после чего останавливается на попытке прочитать из пустой очереди
программа беспрерывно печатает строки вида
pN cM
, где N
— номер производителя, а M
— номер потребителя
программа беспрерывно печатает строки вида
p0 c0, p1 c1
или p2 c2
, где число после p
— номер производителя, а число после c
— номер потребителя
программа содержит ошибку в цикле, где запускаются потоки
Сложность вопроса
52
Сложность курса: Язык программирования Python
62
Оценить вопрос
Комментарии:
Аноним
Если бы не данные подсказки - я бы не осилил c этими тестами интуит.
19 ноя 2019
Аноним
Я завалил зачёт, почему я не увидел этот великолепный сайт с всеми ответами интуит месяц назад
19 май 2019
Другие ответы на вопросы из темы интернет-технологии интуит.
- # Какое значение threadsafety соответствует ситуации, когда потоки могут одновременно использовать DB-API 2.0 совместимый модуль, но не соединения, получаемые на основе этого модуля
- # Какой код порождает следующее расположение кнопок? [Большая Картинка] # 1 b1.grid(row=0, column=0, rowspan=2) b2.grid(row=0, column=1) b3.grid(row=1, column=1) # 2 b1.grid(row=0, column=0, columnspan=2) b2.grid(row=1, column=0) b3.grid(row=1, column=1) # 3 b1.grid(row=1, column=1, rowspan=2) b2.grid(row=1, column=0) b3.grid(row=0, column=0) # 4 b1.grid(row=1, column=1, columnspan=2) b2.grid(row=0, column=1) b3.grid(row=0, column=0)
- # Где мог встретиться следующий фрагмент кода? %module gugu %typemap(out) char * { char i; $result = PyTuple_New(6);
- # Получен новый пакет (в виде исходных кодов) для Python. Какова рекомендуемая процедура установки нового модуля, если известно, что он использует distutils?
- # Как передаются CGI-сценарию данные из формы методом GET?