03-26-2012 09:40 AM
03-26-2012 10:10 AM
03-27-2012 09:52 AM
Does it crash if you do NOT call CVIProfSetCurrentThreadProfiling in your program?
You mentioned that the crash happens in an initialization function. Does this function execute in DllMain or in any other special context?
Remove or exclude all code from the project other than the initialization code and the code it calls, and see if the crash still occurs. And, if it crashes, is this code something you can post, so I can try running it?
03-28-2012 11:40 AM
02-04-2013 03:30 AM
I hoped that this problem would go away in CVI 2012, but no dice.
I just spent a few hours trying to get the profiler to run without success.
My main() calls a lot of init functions and the message "An unexpected fatal error occurred in the Execution Profiler" pops up at random if the main is long enough:
void main(void) {
InitA();
InitB();
} // Profiler works
If I go to InitA/B/.../Z() it always fails, If I have InitE() it sometimes fails, sometimes runs. Obviously I'm simplifying a lot.
Those init() load panels and do a lot of other stuff but I can't isolate it to a particular function.
Now when I get that Popup, I can [Stop] the program without having to acknowledge the popup and each time it's on a different line.
This is what I get in the CVIDebugLog.txt:
[10:28:12.406] [WARNING] [OpenSharedMemory] [..\jeff\debugger\cvidebugwin32.c:1434] Err = -1283 [10:28:14.950] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:14.966] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:14.966] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.000] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.000] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.017] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.051] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.051] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.051] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.253] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.455] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.522] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.674] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:15.741] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:16.078] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:16.129] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:16.280] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:16.280] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:19.565] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:19.633] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101 [10:28:20.340] [WARNING] [LoadResIdList] [..\james\ui_file.c:711] Err = -101
It's not such a critical issue because I can use Valgrind+callgrind or the old gprof, but it still would be nice to have an integrated working profiler.