New Dictionary.HasKey significantly slower on Windows with Text keys

We identified a major bottleneck in our Windows client vs. the Mac client. It turns out that using Xojo.Core.Dictionary.HasKey where the keys are Text is much slower on Windows than on the Mac. I’m talking a factor of roughly 20 times slower. String keys are acceptable and show no discernible difference between the platforms.

See <https://xojo.com/issue/45220>

I plan to move this topic to the public Windows section, but wanted to get @Joe Ranieri 's attention, hopefully to get a sense of when a fix might be forthcoming before I start some major refactoring. Can you say, Joe?

I’ll bet it’s related, but it turns out that ParseJSON takes 10 times longer on Windows too. I’m pretty sure it wasn’t always that way.

It’s something I’ve been working on fixing for the next release, but it isn’t finished yet and I’m not sure when it’ll make it into a release.

Thanks Joe. Are at least some of these performance issues new (like the ParseJSON performance) or do they all go back to inception?

(Taking this discussion public now.)

[quote=286937:@Kem Tekinay]Thanks Joe. Are at least some of these performance issues new (like the ParseJSON performance) or do they all go back to inception?

(Taking this discussion public now.)[/quote]

I haven’t looked into the specific performance problems you’ve mentioned as being new, so I can’t comment there. I do know that some of the issues I’ve been looking into do go back to its inception.

I just tested ParseJSON in 2015r3 and the performance is roughly the same on Windows, so that probably goes back to inception too.

Since I don’t know if these cases are related, I created a second report and project about ParseJSON’s Windows performance.

<https://xojo.com/issue/45229>