私のコードでは、数年前からPortMidiが使用されています。
外部のMIDIサーフェスコントロールMackieのコントロールのためのポータブルC++コードの作成に使用します。
私はPortMidi最新バージョンを使用しています:20101008
最近、Windows 10でコントロールが頻繁に使用されると、デッドロックが発生することがわかりました。 これは、Windows 10のでのみ発生します。
デッドロック状態で次のスレッドがスタックしている:
Windows 10のPortMidiのデッドロック
ntdll!ZwWaitForSingleObject
KERNELBASE!WaitForSingleObjectEx
wdmaud!CMIDIOutDevice::WriteEvent
wdmaud!CMIDIOutDevice::PlaySysEx
wdmaud!HwModMessage
wdmaud!dspsL
WINMMBASE!midiMessage
WINMMBASE!midiOutLongMsg
MIDICommunication!winmm_write_flush
MIDICommunication!Pm_WriteSysEx
を私はコードがイベント(ないロック)を待っていることがわかったデバッガを使用します。
WindowsMacのPortMidiの問題やその回避方法を知っている人はいますか?
多くのおかげで、ラパス
Win10は[厄介なことが知られています](https://stackoverflow.com/a/32553208/17034)。あなたがそれについて嘘をつけていないことを確認してください。あなたが間違った価値を渡すと、デッドロックが発生します。 –