Update: Using tsv::set/get I was able to retrieve the name of my session command into the rvt page, but there the command is not known and fails.
On Tue, Jun 12, 2018 at 7:40 AM, Brice Hamon <normandvik...@gmail.com> wrote: > Hi Massimo, > > Ok we are getting somewhere. > > I started a TCL thread, which loads my lib, create a session and starts > it, followed by a vwait forever. > > This worked. I see the readycmd procedure been called when all the c++ > code is happy. > > It is not that easy to explain so here is what I do in the RivetChildInit: > > > set tid [thread::create] > > thread::send -async $tid { > > proc ::readycmd {} { > puts [info commands] > puts [namespace children ::] > puts [info procs] > } > > proc ::errorcmd {txt} { > log ERROR "SB: $err" > } > > # Opening the link > if {[catch {load -global libThreadTclApi.so threadtclapi} err]} { > puts "Error loading the libThreadTclApi.so library: $err" > } > > # Creating a session > set ::sess_ [ynet new] > $::sess_ configure -daemon y1 -port 2002 > $::sess_ configure -readycmd ::readycmd > $::sess_ configure -errorcmd ::errorcmd > $::sess_ open > > vwait forever > } > > This code works but still 2 things is happening: > > 1) If the proc readycmd is defined outside the thread's script, the > library is not be able to call it and generates an error. > > 2) on the rvt page, I can't see the ::sess_ variable nor that I see my > library's new command. > > So the there is still things not working as I was hoping they will. > > Thank you, > Brice. > > >