vxi-discuss



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Linux multi-threads



Hello,

I'm trying to spawn multiple threads (i.e multiple channels) on Linux - Redhat 6.1.
The threads seem to be created OK but when the 2nd thread tries to access lp->args within thread_main
(line 383 in thread_main.c), I get a seg fault on the following line:

VXIObjectSetProperty(lp->args,"telWaitTimeout",VXIFloatCreate(CALL_TIMEOUT));

Did anyone try to create multiple channels ? The fix is hopefully simple but as I'm not used to the
VXIObjects I have some problems tracing things with gdb.

Thanks in advance,

Vincent
 
 

Traces:
 

(gdb) run test2.vxml -maxCalls 1 -numChannels 2
Starting program: /auto/vvs/ribiere/speechworks/OpenVXI_1_3/bin/osb/Release/testVXI test2.vxml -maxCalls 1 -numChannels 2
testVXI.c
setting -maxCalls to 1
setting -numChannels to 2
Global init OK
Fake uiPrintline in testVXI.c
numchannels = 2
Spawning channels 0
Fake uiPrintline in testVXI.c
[New Thread 8820 (manager thread)]
[New Thread 8819 (initial thread)]
[New Thread 8821]
Spawning channels 1
Fake uiPrintline in testVXI.c
[New Thread 8822]
thread_main.c
Platform create
Line 0: Got call 1
Create ok
Channel Num:0 Pushing new execution context
Channel Num:0 Pushed scope OK
Channel Num:0 Session vars initialized
Channel Num:0 Pushed initial execution context
Channel Num:0 About to download test2.vxml
Channel Num:0 Fetching test2.vxml
Channel Num:0 Filename in cache test2.vxml

Channel Num:0 Resolved to test2.vxml
Channel Num:0 Successfully fetched test2.vxml
Parsing test2.vxml
Channel Num:0 Successfully parsed test2.vxml
Channel Num:0 Loaded initial doc from test2.vxml
Channel Num:0 Installing test2.vxml
Channel Num:0 Installed with base test2.vxml
Channel Num:0 Initializing document grext=1
Channel Num:0 Loading grammars for grext=1
Channel Num:0 dialog_loop: looking for = (null)
<form>
about to collect
Collect Phase
Channel Num:0 FIA: rtncode = 5
about to collect

116 allocs 96 frees
thread_main.c
[Switching to Thread 8822]

Program received signal SIGSEGV, Segmentation fault.
0x806b41b in obj_set_prop (obj=0x8095a60, name=0x8070467 "telWaitTimeout",
    val=0x8092ff8) at VXI_types.c:129
129       obj->vars[i].key = VXIStringCreate(name);
 

-- 
Vincent Ribiere
senior Engineer, Cisco Systems
(408) 527 6613
 


This page is maintained by Alan W Black (awb@cs.cmu.edu)
speechinfo.org is hosted on a machine donated by VA Linux Systems
VA Linux Systems