ãããã«ã¡ã¯ãæ ªå¼ä¼ç¤¾ãµã¤ãã¼ã¨ã¼ã¸ã§ã³ãã®èç°ï¼@c-bataï¼ã§ãã
ããµã¤ãã¼ã¨ã¼ã¸ã§ã³ãã§ã¯ãæè¡è ãææ°ã®ãã¯ããã¸ã¼ãå¸åããæ©ä¼ãè¨ãããããæµ·å¤ã»å½å ã®æè¡ç³»ã«ã³ãã¡ã¬ã³ã¹ãã¤ãã³ãã¸ã®ç©æ¥µçãªåå ãä¿ãããã®ãµãã¼ããè¡ããã¦ãã¾ãããã®ä¸ã¤ã¨ãã¦GitHubã«å ¬éãã¦ããOSSã®ã¹ã¿ã¼æ°ã«å¿ãã¦ã¤ã³ã»ã³ãã£ããå¾ããããGitHubã¹ã¿ã¼ã¤ã³ã»ã³ãã£ããã¨ããå¶åº¦ãããã¾ããä»åã¯ãã®å¶åº¦ãå©ç¨ãã¦ãå¼ç¤¾ã¨ã³ã¸ãã¢ã®ç³å·ï¼@rinovï¼ã¨ã¨ãã«EuroPython 2018ã«åå ãã¾ããã
EuroPythonã¨ã¯
ãEuroPythonã¯ã¨ã¼ãããæå¤§ç´ã®Pythonã®ã«ã³ãã¡ã¬ã³ã¹ã§ãä»åéå¬ãããEuroPython 2018ã¯1200人以ä¸ã®åå è ã¨100ãè¶ ããã»ãã·ã§ã³ãçºè¡¨ããã¾ããã åå è ã¯Pythonåå¿è ã®æ¹ããæåã©ã¤ãã©ãªã®ã³ã¢éçºè ã®æ¹ã¾ã§ã¨å¤æ§ã§ãPythonã«èå³ãããæ¹ãªãã©ãªãã§ã楽ãããã«ã³ãã¡ã¬ã³ã¹ã§ãã éå¬å°ã¯å¹´åº¦ã«ããç°ãªããã¨ãå¤ãã§ãããä»å¹´ã¯ã¤ã®ãªã¹ã®ã¨ãã£ã³ãã©ï¼Edinburghï¼ã§éå¬ããã¾ããã Pythonã«ã¾ã¤ããå¹ åºãå 容ã®ã»ãã·ã§ã³ãè¡ãããã»ãã·ã§ã³æ¯ã«ãBeginnerããIntermediateããAdvancedãã®ãããããã©ããªã³ã°ããã¦ãããèªåã®èãããå 容ã»ã¬ãã«ã«åããã¦è´è¬ãããã¨ãã§ãã¾ãã
ãæ¬ã¬ãã¼ãã§ã¯ãEuroPythonã®é°å²æ°ãæ°ã«ãªã£ãã»ãã·ã§ã³ã®å 容ããå±ããã¾ãã
ä¼å ´ã¨ã¹ã±ã¸ã¥ã¼ã«ã«ã¤ãã¦
ãéå¬å°ã§ããã¨ãã£ã³ãã©ã¸å°çããã¨ãæ¥æ¬ã®å¤ã¨ç°ãªããæ¹¿åº¦ãå¤ããªããããæ¥å·®ããå°ãã¦ãã¦ãè¸ãæããæããªãå°è±¡ã§ããã
ãã¨ãã£ã³ãã©ã®å¤ã¯æ°æ¸©ãå¹³å10度ã20度ã¨éãããããæ°åã§ãæµ·ãè¿ããã常ã«å¿å°ãã風ãå¹ãã¦ãã¾ãã
ãä¼å ´ã§ããã¨ãã£ã³ãã©å½éä¼è°å ´ã«å°çããã¨ããã±ããã®èªè¨¼ã¨ã¨ãã«æ°å¤ãã®ã°ããºãTã·ã£ããªã©ãé å¸ããã¾ãããä¼å ´ã«ã¯ãã¼ã¹ãè¨ç½®ããååè³ä¼æ¥ã®ãããã¯ã説æãã°ããºã®é å¸ãè¡ããã¦ãã¾ãããç§ï¼ç³å·ï¼ã¯Intelããã®ãã¼ã¹ã§Tã·ã£ããé ãã¾ããã
ããã¼ã¹ã®è¿ãã«ã¯å¸¸æå©ç¨ã§ãã黿ºã¿ããã飲ã¿ç©ãæä¾ãããã»ãã·ã§ã³ã®åéã®ä¼æ©ãã交æµã®å ´ã¨ãã¦æ´»ç¨ããã¦ãã¾ããã
ãã¹ã±ã¸ã¥ã¼ã«ã¯åºèª¿è¬æ¼ããå§ã¾ããæå¤§7ã¤ã®ã»ãã·ã§ã³ã並åã§éå¬ããã¾ãããååã¯3ã»ãã·ã§ã³ãåå¾ã¯4ã»ãã·ã§ã³ãè¡ããã2ã»ãã·ã§ã³æ¯ã«ã³ã¼ãã¼ãã¬ã¤ã¯ã®æéãè¨ãããã¦ãããéä¸åãåãããã«åã»ãã·ã§ã³ã«æããã¹ã±ã¸ã¥ã¼ã«ã§ããã
ã夿¹ã«ã¯ã»ãã·ã§ã³ãçµããããã®å¾ãåºèª¿è¬æ¼ã¨ã©ã¤ããã³ã°ãã¼ã¯ãè¡ãã䏿¥ãçµããã¾ãã
åºèª¿è¬æ¼
- ã¿ã¤ãã«ï¼Die Threads
- çºè¡¨è ï¼David Beazley
- ã»ãã·ã§ã³åç»
ã忥ã®åºèª¿è¬æ¼ã¯ David Beazleyæ°ï¼@dabeazï¼ã«ãããDie Threadsãã¨ããçºè¡¨ã§ããã
ãDavid Beazleyæ°ã¯ãPython Essential Referenceãã¨ãPython Cookbookãï¼é¦è¨³ï¼ãPython ã¯ãã¯ãã㯠第2çãï¼ã®èè ã§ãPythonã«å¤§ããè²¢ç®ããä¸äººã¨ãè¨ãã¾ãã
ãPyConãO'Reilly Open Source Conventionã®å§å¡ä¼æ å½ãªã©ãçµã¦ã2002å¹´ã«PSFï¼Pythonã½ããã¦ã§ã¢è²¡å£ï¼ã®ãã§ãã¼ã«é¸åºããã¾ããã
ãã¾ããBeazleyæ°ã®çºè¡¨ã¯Pythonã®ã³ã¢ãªå 容ãå®éã«ã³ã¼ããæ«é²ããªããè¡ããã©ã¤ãã³ã¼ãã£ã³ã°ã§ã®çºè¡¨ã¹ã¿ã¤ã«ãå¤ãã常ã«å¤ãã®Pythonistã«æçãªæ å ±ãæä¾ãã¦ãã¾ãã
- Twitterï¼@dabeaz
- GitHubï¼https://github.com/dabeaz
æ¦è¦
ããã®åºèª¿è¬æ¼ã§ã¯ãã¹ã¬ããããã°ã©ãã³ã°ã«ãããã¹ã¬ããã°ã«ã¼ãããã£ã³ã»ã«ãªã©ã®é«åº¦ãªæ©è½ãPythonã¹ã¬ããããã°ã©ãã³ã°ã«ä¸ããã¨ãã®å¯è½æ§ã«ã¤ãã¦è¨åãã¦ãã¾ãã
ãã¾ããå®é¨çãªã©ã¤ãã©ãªã¨ãã¦ä½æãããthredoãç¨ããã©ã¤ãã³ã¼ãã£ã³ã°ã®ãã¢ãè¡ãã¾ããã
çºè¡¨ã§ä½¿ç¨ãããã©ã¤ãã©ãªï¼thredoï¼
ãPythonã«ã¯2ã¤ã®ä¸çããããããã¯åæãéåæã§ããããªãç§ãã¡ã¯éåæããã°ã©ãã³ã°ãé¸ã¶ã®ã§ãããã?
ãä¾ãã°TwitterãFacebookã®ãããªSNSãæãæµ®ãã¹ã¦ã¿ã¾ãããã
ã1ã¤ã®ã¦ã¼ã¹ã±ã¼ã¹ã¨ãã¦éåæããã°ã©ãã³ã°ã®ã¡ãªããã¯ã¹ã±ã¼ãªã³ã°ã§ããã§ããã大éã®ã¯ã©ã¤ã¢ã³ããããªãå ´åã§ãéåæããã°ã©ãã³ã°ã¯ä½¿ããã¾ããä¸ã¤ã®çç±ã¨ãã¦ã¯GILï¼ã°ãã¼ãã«ã¤ã³ã¿ããªã¿ããã¯ï¼ãåé¿ãããããªã©ãæãããã¾ãã
ãããããéåæããã°ã©ãã³ã°ã¨ä¸æ¦ã«è¨ã£ã¦ãPythonã§ã¯ãasync/awaitã®ããã«èªãã¿ã¹ã¯ã¹ã±ã¸ã¥ã¼ã©ã§ç®¡çããã±ã¼ã¹ããthreadingã¢ã¸ã¥ã¼ã«ã®ããã«OSã«ã¼ãã«ã®ã¹ã¬ããã使ç¨ããã±ã¼ã¹ãããã¾ããasync/awaitãããä»ãthreadingã¯éå»ã®ãã®ã§ããããï¼
ããã®è¬æ¼ã§ã¯ãPure Pythonã®ã¹ã¬ããã§ã®éåæãªæ¯ãèãã«ã¤ãã¦ããã¾ãã¾ãªæ¤è¨¼ãè¡ãã¾ããã
ã©ã¤ãã³ã¼ãã£ã³ã°ãã¢
ãã©ã¤ãã³ã¼ãã£ã³ã°ã§ã¯å®éã«ã¹ã¬ãããã¹ã¬ããã°ã«ã¼ãã«å¯¾ãã¦ãã£ã³ã»ã«ããå ´åã®æåãPythonã¹ã¬ããããã°ã©ãã³ã°ã§ã®ãã®è§£æ±ºçã®ã¢ã¤ãã¢ã«ã¤ãã¦èª¬æããã¾ããã
ãã¾ããã¹ã¬ããã®ãã£ã³ã»ã«æä½ã«ãããã©ããã£ãã±ã¼ã¹ã§ã¹ã¬ãããæ»ã¬ã®ããã¾ãããã®æã®æ¯ãèãã¯ã©ã®ããã«ãªãã®ãã«ã¤ãã¦å®é¨ãè¡ãã¾ããã
- ããã¯ãå¾ ã¤ã¹ã¬ããããã£ã³ã»ã«ãããã©ããªãã®ãï¼
- ããã¯ãåå¾ãã¦ããã¹ã¬ããããã£ã³ã»ã«ãããã©ããªãã®ãï¼
- ãé£äºããå²å¦è ã®åé¡ãã§çºçãããããããã¯ã®åç¾ã¨è§£æ±ºç
- Queueã¨ThreadGroupã使ã£ãæã®ãã£ã³ã»ã«ã®æå
ã¾ã¨ã
ãè¬æ¼ä¸ã§ã¯å®é¨çãªã©ã¤ãã©ãªãthredoããç¨ãã¾ããããå¾ã«Curioä¸ã«å®è£ ããã¦ãããã¨ãæããã«ããã¾ããã
ãéåæããã°ã©ãã³ã°ã¨ãã¦ã®ã¹ã¬ããä¸ã§ã®ããåãã¯ãBeazleyæ°ãæ°å¹´åããæ¤è¨ãã¦ãããããã¯ã§ãã
ããã詳細ãªã¹ã¬ããéã®ããåãããããããã³ã°æä½ã«ã¤ãã¦ã¯ããã¡ãã§ã¾ã¨ãããã¦ãã¾ãã®ã§ãèå³ãããæ¹ã¯æ¯éèªãã§ã¿ã¦ãã ããã
ãä»åç´¹ä»ãããPythonã®ã¹ã¬ããã®æ¯ãèãã¯ãOSã«ã¼ãã«ã§ããããã³ã°æä½ãããã®ã§ã¯ãªããéåæã©ã¤ãã©ãªå´ã§ããããã³ã°æä½ãããã¹ã¬ããã©ã¤ãã©ãªãæ§ç¯ã§ãããã¨ã示åãããã®æ¹æ³ãå©ç¨ãããã¨ã§ãã¿ã¹ã¯ã°ã«ã¼ãããã£ã³ã»ã«ãªã©ã®é«åº¦ãªæ¦å¿µã®æä½ãæã«å ¥ãããã¨ãã§ããã¨ããPythonã¹ã¬ããããã°ã©ãã³ã°ã®å¯è½æ§ãåèªèã§ããå 容ã§ããã
ãã¾ããæå¾ã«Beazleyæ°ã¯ãã¹ã¬ããããããã¯ããå ´åã«ããããOSã®ããããã³ã°ã§ã¯ãªããéåæã¤ãã³ãã«ã¼ãã§è¡ããã¦ããã¨ãããã¨ã¯éè¦ãªæ¦å¿µã§ããã¤ã¾ããããããªããç¾ä»£çãªã¹ã¬ããã©ã¤ãã©ãªãä½ããªãã°asyncioã使ã£ã¦å®è£ ããã§ããããã¨è¨åãã¾ããã
