I am currently developing an application that uses multithreaded OpenGL windows. Each window has its own rendering context message pump, and other thread related code. Only data is shared across contexts to minimize memory usage for large data sets.
One of our test systems exhibited stalls, hang ups, and ultimately crashes. After tracking what was happening to this specific system, we found that Raptr was causing the issue if a second threaded window was opened when Raptr interacting with the application. Within the first few seconds of starting the application a black icon, not part of our system, would appear in the upper left hand corner. If a second threaded window was open when this icon appeared, the system would stall then the application would crash. If the application is started with only its main window open and the user allowed the black icon to show up then fade out, they could open the threaded windows without issue.
Is there some known process to keep Raptr from interacting with our software? We do not want to tell our customers that they cannot run the Raptr software if there is a reasonable solution to preventing it from crashing our framework under multithreaded usage.