-
Notifications
You must be signed in to change notification settings - Fork 120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Synthesizer::new
を非asyncにする
#671
Synthesizer::new
を非asyncにする
#671
Conversation
なるほどです!賛成です! 今思えば、newは必ず同期にしておくと、各言語ラッパー作る時にコンストラクタの仕様に衝突しにくい気がちょっとしました。 (まあコンストラクタにせず、staticメソッドにすればが良さそうですが) |
ですね。Pythonのような言語でも必ずしも狭義のコンストラクタは用意する必要は薄いかと思います(あとPythonだと、呼ぶと「asyncの方を呼べ」という ちなみにPythonでも |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Java APIのLoggerもC APIと同じように(RUNTIMEの初回アクセス)セットアップしてるので、Java APIのログが出なくなるような気がします(まだ検証してませんが)
検証してきました。 |
Java APIにも同様のものを入れました。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!!
loggerの気づき素晴らしいと思います!!
こういう副作用はなかなか危ないかもですね…。
内容
Synthesizer::new
にはもともとload_all_models
というオプションがありましたが、今は #587 により無くなっています。なので今はSynthesizer::new
は何のIOも重たい処理もせずに、数十μsで完了します (ちなみに数十μsの大部分はSupportedDevices
を毎回作りなおしているところかと思われます)。なのでもうasyncは不要でもあり、適切でもなくなっているかと思いました。
関連 Issue
#545
その他