From: Clive Harding (clive++at++sgi.com)
Date: 01/13/2005 06:39:15
A better way to fix it is to ...
usconfig(CONF_ATTACHADDR, ((void *) ~0));
Immediatelty after the pfConfig() call.
Clive.
Clive Harding wrote:
> I think this is because a low level arena created by the sproc call is
> clashing with one already created by performer.
>
> Try sproc'ing a dummy thread before pfInit()/pfConfig().
>
> Clive.
>
> Jean-Christophe Lombardo wrote:
>
>> Hi,
>>
>> It seems that release 3.2 of Performer introduce a change of behavior
>> regarding threads...
>> I am no more abble to launch a thread with sproc(): the system error
>> 16 (ressource busy) is triggered.
>> Is there any workaround ?
>>
>> I am using Performer 3.2 on an Onyx 300 under IRIX 6.5.25
>>
>> jcl
>>
>> PS: To show this I modified the common/main.c in
>> /usr/share/Performer/src/sample/C
>> I added these lines just before the main:
>> void threadedFunc(void *data)
>> {
>> while (1) {
>> pfNotify(PFNFY_WARN, PFNFY_PRINT,
>> "The thread is still running !");
>> sleep(2);
>> }
>> }
>>
>> and these ones just before entering the Application main loop
>> pid_t thread = sproc(threadedFunc, PR_SALL, 0);
>> pfNotify(PFNFY_WARN, PFNFY_PRINT,
>> "Launched thread %d, oserror is %d.",
>> thread, oserror());
>> perror("System says ");
>>
>> It runs well with performer 3.1.1 but not with 3.2...
>
>
>
>
> -----------------------------------------------------------------------
> List Archives, Info, FAQ: http://www.sgi.com/software/performer/
> Open Development Project: http://oss.sgi.com/projects/performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
> -----------------------------------------------------------------------
>
This archive was generated by hypermail 2b29 : Thu Jan 13 2005 - 06:39:24 PST