Python:setDeamon(True)のワーニングの対処
2020年に開発し2021年に運用した、Pythonのプログラムは、Python 3.6で動作していました。
ajya.hatenablog.jp
2022年の運用では、Ubuntu 20.04 LTSに最初から導入されているPython 3.8か、最新のPython 3.10で動作させる予定です。
Python 3.8で起動させた際には、エラー、警告ともに表示されませんでしたが、Python 3.10で動作させたら、警告が表示されました。
Photo by Chris Ried on Unsplash
setDeamon(True)でワーニングが表示される
Python 3.10では、setDeamon(True)でワーニングが表示されています。
動作はしているので、問題はありませんが、ワーニングが表示されるのは気持ち悪いです。
検索すると、Python 3.10では、setDeamon()メソッドは、非推奨になっています。
docs.python.org
Python 3.9では、setDeamon()メソッドは、非推奨になっていません。
docs.python.org
Python 3.5より前から、setDeamon()メソッドは、存在はしていたようです。
docs.python.org
Python 3.9のsetDeamon()メソッドの説明には
daemon に対する古い getter/setter API; 代わりにプロパティを直接使用してください。
と書かれています。
「プロパティを直接使用」とは、具体的にどういうことだ?と試しに、
.setDeamon(True)
を
.deamon = True
に変更したら、ワーニングが表示されなくなりました。
検索すると、setDeamon()メソッドを使ったサンプルコードはたくさん見つかります。
最新のPythonではワーニングが表示されるので、戸惑う人は多いのではないかと思います。