teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

Linuxにおいて不具合

2018/05/03 12:52

投稿

namuyan
namuyan

スコア76

title CHANGED
File without changes
body CHANGED
@@ -34,4 +34,36 @@
34
34
  `RuntimeError: There is no current event loop in thread 'Thread-1'.`
35
35
  いつも通りにthreadingモジュールも用いましたが、上記のエラーを受取りました。
36
36
  asyncioを初めて少ししか経っていない事もありエラーの意味を理解できず解決策がわからず困っています。
37
- どうすればいいのでしょうか?宜しくお願いします。
37
+ どうすればいいのでしょうか?宜しくお願いします。
38
+
39
+ ## 追記
40
+ ```python
41
+ from aiohttp import web
42
+ import asyncio
43
+ from threading import Thread
44
+ import time
45
+
46
+
47
+ def test(request):
48
+ return web.Response(text='Hello world.')
49
+
50
+
51
+ def server(host, port, loop):
52
+ asyncio.set_event_loop(loop)
53
+ app = web.Application()
54
+ app.router.add_get('/', test)
55
+ web.run_app(app, host=host, port=port)
56
+
57
+
58
+ # server("127.0.0.1", 2000)
59
+ loop = asyncio.get_event_loop()
60
+ Thread(
61
+ target=server,
62
+ args=("127.0.0.1", 2000, loop),
63
+ daemon=True).start()
64
+
65
+ while True:
66
+ time.sleep(5)
67
+ print("Sleeping..zzz")
68
+ ```
69
+ Windowsで動作する事を確認した後、Ubuntuでも動作を確認した所、`RuntimeError: set_wakeup_fd only works in main thread`とエラーを吐きました。