3
Imageに割り当てられたメモリが解放されていないことに気付きました。打ち上げアプリなしQmlイメージとメモリ解放
システム以下のメモリの値があります:423MiB/1985MiB(NVIDIA-SMI経由で確認)
私はアプリを起動してクリックしています(変化する画像のソース)を数回使用してメモリが増加しているが(1クリックすると4〜5MBが追加されます):1950MiB/1985MiB
"cache"プロパティをfalseに設定しても効果はありません。
私は回避策を見つけました:画像の可視性を変更しますが、この場合は多くの画像アイテムが必要です。
「可視」ではない「ソース」プロパティを使用するソリューションが存在しますか?
QMLソース:
Image {
id: trg
anchors.fill: parent
cache: false
states: [
State {
name: "on"
PropertyChanges {
target: trg
source: "qrc:/1.png"
}
},
State {
name: "off"
PropertyChanges {
target: trg
source: "qrc:/2.png"
}
}
]
}
MouseArea {
property bool isOn: false
anchors.fill: parent
onClicked: {
if (isOn) {
trg.state = "on";
}
else {
trg.state = "off";
}
isOn = !isOn;
}
}
はい、キャッシュシステム/ gsはQMLを吸っています。 – folibis