I am asking this question to save some time and I am expecting answers only from people who have tried something like this before. (I realize that I could just try it and see if it works, but that takes a non-trivial amount of time.)
Suppose you wrote a simulation in pure Mathematica. As the simulation progresses, a vector is being periodically updated changed. One could then have a Dynamic@ListPlot[vector] and watch the progress "live".
Now the question is: is this possible when using LibraryLink? With LibraryLink it's possible to access a kernel variable (vector) directly. Is it possible to get the system to register the changes to that variable and to run the Dynamic when necessary? Or is there an alternative simple (low effort) way to achieve the same, i.e. use Mathematica to visualize a simulation "live"?
One way I see that certainly work is periodically calling back to the kernel through a MathLink connection and setting a variable through Mma code, which contains the information to be visualized. Is there a simpler/better way?

cNewtonFractalSharedreturns, right? Do you know if it possible to force updating before it returns? Perhaps the way to force updating is exactly to return to Mathematica, and then call the function again from Mathematica to continue? (There should be some way to limit updating speed, and this could be the number of calculation steps made inbetween returns.) – Szabolcs Jun 10 '13 at 15:08demo_shared.cin theLibrayLinkexamples source. There you see that they have separat functions store the pointer, get values and set values of tensor. Your dynamic monitor of your partial result should only be read operations, maybe this can be done while your calculating the result. Therefore, call your calculation function and start this in a new thread and return immediatly. Then you can check periodically the value of your tensor as often as you like. You'll need another function indicating .. – halirutan Jun 10 '13 at 17:43