Python множественное и одновременное FIFO

1

Как я могу открыть несколько fifo с Python3? Код ниже прост, но он складывается на последней строке и ждет (?)... Пожалуйста, помогите?

   toAgent = ['ABCD', 'EFGH', 'IJKL', 'MNOP',]

   def createPipe():

        for i in range(0, len(toAgent)):
            #print(i)
            fifoName = '../tmp/' + toAgent[i]       
            if not os.path.exists(fifoName):
                os.mkfifo(fifoName) 

                pipeName = 'pipe_' + str(i)
                print(pipeName, fifoName)
                pipeName = os.open(fifoName, os.O_WRONLY )
  • 1
    Ваша функция неверна, и вы не вызываете функцию
Теги:

1 ответ

0
import os
toAgent = ['ABCD', 'EFGH', 'IJKL', 'MNOP',]

def createPipe():
    for i in range(0, len(toAgent)):
            #print(i)
        fifoName = '../tmp/' + toAgent[i]
        if not os.path.exists(fifoName):
            os.mkfifo(fifoName)

            pipeName = 'pipe_' + str(i)
            print(pipeName, fifoName)
            pipeName = os.open(fifoName, os.O_WRONLY )

createPipe()
  • 0
    Функция createPipe () создает только 1 канал, а не 4 согласно содержимому toAgent []. Он будет ждать в цикле вечно (?) Между каждым созданием канала. Единственный способ, который я нашел, это разорвать цикл с помощью CTRL-C, чем отправить новый python3.
  • 0
    Вы можете поделиться своим полным кодом? @Eric

Ещё вопросы

Сообщество Overcoder
Наверх
Меню