1
私はデータを継続的に送信し、クライアントからのプロンプトを待って、変数を設定したり、ログファイルの内容を転送したりする予定のPythonサーバーを持っています。現在私はクライアントからのプロンプトを再生しようとしています。Python asyncioリソースが利用できません
私はこれを行うにはasyncioを利用しようとしていますが、私は次のようなエラーに実行しています:
() '一時的に利用できないリソースを'、BlockingIOError(11)
私のサーバーのコードは次のとおりです。
loop = asyncio.get_event_loop()
async def server():
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host = ''
port = 1194
s.bind((host,port))
print ("bouned to port")
s.listen(4)
while True:
conn, addr = await loop.sock_accept(s)
if conn:
print ("connected to address: {!r}".format(addr))
# print (conn)
d = loop.create_task(temp_sender(conn))
try:
await d
except StopIteration:
pass
async def temp_sender(conn):
print("temp_sender activated")
try:
data = await conn.recv(1024)
print (data)
sdata = data.decode()
print (sdata)
conn.writeline("the set temp is: ", sdata)
except:
print (sys.exc_info())
pass
connからデータを受信しようとすると、temp_sender関数でエラーが発生します。
この可用性エラーを修正するにはどうすればよいですか?
プログラミング言語を使用して質問にタグを付けてください – kism3t
これはpython3.4.xで動作します – Aravind