https://bugs.winehq.org/show_bug.cgi?id=38879
--- Comment #4 from Riccardo c10ud.dev@gmail.com --- (In reply to Henri Verbeet from comment #3)
Note that in principle you can use IDXGIFactory1::IsCurrent() to check when you need to invalidate the cache. (Currently that always returns TRUE on Wine, but it would be the correct way to do this.)
Well, yes, but this would still mean we keep a dxgi instance around (with its wined3d etc.), right?
So we could still keep the current code and skip only instancing as I think the expensive part is that one (I didn't measure it but..).
I really don't think there's a _good_ way of solving this, maybe apps shouldn't just use wbemprox services for continuous querying.. (in this case the informations requested are really weird: ram, driver version and desc...???).
Also I'm not sure if other apps follow the same pattern.
Last note: I may have phrased the issue wrong, it's not really a frame drop, it's more of a ~100ms freeze (as you can see from logs).
Riccardo