mclTerminateApplication() destroys rest of C-application
Show older comments
Hello! I have a question about calling mclTerminateApplication() function. I have compiled Matlab C shared library. For library calls I have created my own wrapper functions. Then I initialize Matlab library with calls to mclInitializeApplication() and my library init function, then perform Matlab calculation, then terminate library and next call to mclTerminateApplication().
After this point still I have to do some job in C application. but it hangs up. printf() does not print, getch() never returns.
Documentation states clearly that Matlab function call are prohibited after mclTerminateApplication(). How about regular C code? Is it allowed? Is it absolutely necessary to call mclTerminateApplication() at the very end of C-program?
Thanks in advance
Answers (1)
Kaustubha Govind
on 24 Jul 2012
0 votes
AFAIK, you should be able to run generic C code after mclTerminateApplication(). Have you tried setting a breakpoint in your code after the call to mclTerminateApplication to make sure that mclTerminateApplication returns?
3 Comments
rrlagic
on 25 Jul 2012
Kaustubha Govind
on 25 Jul 2012
rrlagic: Do you think that the MCR could have somehow hijacked stdout/stdin? Sorry, I don't have much to offer here - perhaps you should try contacting MathWorks Tech Support?
rrlagic
on 26 Jul 2012
Categories
Find more on C Shared Library Integration in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!