Re: Own implementation of multithread
- From: Ron Fox <fox@xxxxxxxxxxxx>
- Date: Thu, 28 Aug 2008 06:39:14 -0400
More portable would be to create your threads with
Tcl_CreateThread
As I don't see you using anyting other than default attributes for the pthread_create.
Beyond that I agree with Alexandre andwonder if instead you can make the main controlling flow of control Tcl, and just supply appropriate
compiled extensions where needed, using the Tcl Thread package.
There are a few useful pages on the wiki (wiki.tcl.tk) if you search for threads. Including http://wiki.tcl.tk/1339 which has a 'cookbook' for using threads at the Tcl level. There are also some gotchas given in some of those pages and a nice page on threads vs. events that _may_ make you reconsider the architecture of your application.
Ron.
lkfstephen@xxxxxxxxx wrote:
Dear all,
I am working on a multithread application.
I have already built the TCL using --enable-threads.
In c++ code, I am trying to create many threads, each thread will
create its own interpreter.
Each interpreter will need to eval a script.
For example,
void * func( void * null ){
Tcl_Interp* tcl_interp = Tcl_CreateInterp();
Tcl_Init(tcl_interp);
char * script = "set a 1\n"
"set b 2\n"
"puts $a\n"
"puts $b\n";
Tcl_EvalObjEx(tcl_interp, script , TCL_EVAL_GLOBAL);
delete tcl_interp;
}
int main (){
...
for (int i = 0; i < 10000; ++i)
pthread_create(&tid,NULL,func,NULL);
...
}
I would like to ask is this approach is wrong?
Stephen Lai
--
Ron Fox
NSCL
Michigan State University
East Lansing, MI 48824-1321
.
- References:
- Own implementation of multithread
- From: lkfstephen
- Own implementation of multithread
- Prev by Date: Help me
- Next by Date: Re: Solaris + TCL + Oratcl + 64bit
- Previous by thread: Re: Own implementation of multithread
- Next by thread: Re: Own implementation of multithread
- Index(es):
Relevant Pages
|