In these days of multi-threading and asynchronous tasks, it is surprising that a core activity such as this has so substantial and broad an effect that it can even freeze multiple standard NinjaTrader windows. My sense is that the factors contributing to this may include the number of Accounts configured, the number of them that are connecting, where those Accounts are connecting to, etc. However, even a single connection on one Account can manifest the issue.
A simple example that I have seen show the effects is to define a handful of simulation accounts and connect to any Connection. Try a variety of Connections too. The FREE NinjaTrader Forex connection can manifest this. I'm in Australia, so one might consider that there may be some contribution by virtue of network distance, but I don't believe it is so because if I connect to more local data feeds, the effect is still there. "Production" broker connections can be very slow, but even that aspect should be irrelevant.
Waiting for any connection, regardless of how long it takes, should not "hang" other non-connection-dependent parts of the platform. Network speed itself is certainly not a problem in my testing, and even if it were, I don't believe it should manifest as frozen UI elements (e.g. Control Center, Editors, etc). [And by "frozen", I mean unresponsive, but more obviously, various window title bars become white along the top for a period.] And neither is system performance an issue in my case, nor should it be in any case if "merely waiting" for a connection.
Points for consideration include that connecting should not have any significant or noticeable effect on the UI in any respect other than a lack of market data to drive market-data-driven UI activities (e.g. charts). I would not expect to see windows freezing and other threads freezing too (e.g. any real-time clock display "stops" for the duration).
Thanks for looking into this. It's something that can be investigated without a specific piece of code or one well-defined specific circumstance. NinjaTrader is such a superb piece of software engineering generally, so this behaviour presents a challenge that I would like not to have happening when I use it, nor to have to code to provide "comfort" to users of any AddOn software I write when it happens, and for users not to have to experience at all.
Many thanks.
Comment