I am having a go at building a starcraft2 AI in .Net and I want to display a window with some real time feature map data. The AI runs from a console application, and I would like to keep it that way. I would like to have my code spit out some bitmap data to be displayed in a window, as the AI does its thing in real time. However, from this answer, it would seem that running a form from a console application would block the console thread.
How can I run the form, and regularly pass a bitmap to it, from the console application? I am doing this in F# but am happy to see answers based in C# or VB.Net as I can just translate it as needed.
I don't want to try running it as a Windows application to display the form then having my AI running from there, because at some point I might want to compete my AI on the ladder and I am not sure if a windows forms app would be supported.
I suppose I could have my console app publish the data via zero mq or something, and then any process that happens to be listening could just display it, but that seems a bit complex for a simple requirement. I will consider this to be the answer if no better (easier) solution is presented.