宿を開いてじっとしているとフリーズする事がある
Issue #1
on hold
Windows 7 64bit
表題そのまま。ダイアログを開いている途中によく出ていたのでそのせいかとも思ったが、宿を開いて放置していても出た。Windowsのアプリケーションログには0xc0000005(メモリアクセス違反)が出る。
Comments (8)
-
reporter -
reporter pygame.mixerの関数をpygameスレッド外から呼んでいる箇所があり、エラーの原因になっているかもしれない。
これを修正して様子見。
-
reporter 曲の終了時に止まる事は再現しなくなったが、DefReset.midを流しながら音を鳴らすと確実に動作がおかしくなる。
これが原因の一部かもしれない。
-
reporter DefReset.midの場合は特別扱いでループしないように。
しかし同様の音声ファイルを流されれば同じ事であるため、根本的な解決ではない。
-
reporter 依然曲の終わるタイミングでフリーズする。最悪の場合はpygame.mixerの使用を避けるべきかもしれない。
-
reporter 確定ではないが、pygame 1.9.2のアルファ版では問題が起こらなかった。
しかし環境によっては音の再生ができなくなっていたのと効果音がおかしくなったため、まだ使用できない。
-
reporter BASSを使用するようにしたが、ライセンス的にぎりぎり(本体がLGPLなので同梱できるがアーカイヴが完全フリーではなくなる)。
根本的に解決するには他のライブラリを持ってくるなりする必要がある。
-
reporter - changed status to on hold
一旦保留
- Log in to comment
これまでの再現ではほぼ確実にBGMが終了するタイミングで発生している。
ループ処理の問題?