Sponsored Content
Operating Systems HP-UX why does my program runs in conflicting mode? Post 302080344 by happylife365 on Monday 17th of July 2006 10:00:30 PM
Old 07-17-2006
why does my program runs in conflicting mode?

my pragram runs with 3 threads, 2 work threads, one main thread. the 2 work threads run with the same mode and the same code. but now, one of the work thread can't work, and it uses the cpu more than 80%, sometimes uses 100% cpu resource. the another work thread work well.

when I viewed the HP perf agent log, it displays that my program's InterestReason is C, the StopReason is SLEEP or SYSTM, the CPU % is 100.53, the RealTm CPU % is 100.04 ,the other CPU % is nearly 0

RealTm CPU % is 100.04 , that's say, my program use the CPU crueltly, but the the StopReason is SLEEP or SYSTM, it seemed that my program is calling sleep or locked by the mutex, I was puzzled with the conflicting information, can you help me?
 

9 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Can't use sendmail ( Program mode requires special privileges)

I just updated sendmail to the newest version and got into this trouble. Somehow only can root can use sendmail while the other users will simply get "SMTP went away" when using pine or "can not chdir(/var/spool/mqueue/): Permission denied Program mode requires special privileges, e.g., root... (1 Reply)
Discussion started by: Micz
1 Replies

2. Shell Programming and Scripting

Check if a program runs on unix

Hi guys, I had a question last week where I asked how I check from a website hosted on windows if a process is running on on of our unix servers. Vino and Shell Life kindly replied with a perl script: if qm') -gt 0 ] ; then echo "Site is up" else echo "Site is down." # start the... (1 Reply)
Discussion started by: drchris
1 Replies

3. UNIX for Advanced & Expert Users

Minutes a program runs.

I have a ksh script that executes a program with a predetermined timeout in minutes. If the program takes longer then the timeout then it still completes with a return code of 0. :confused: I would like to determine how long the program ran. Then if it takes longer than the timeout I would... (7 Replies)
Discussion started by: 2dumb
7 Replies

4. Programming

getting Segmentation Fault (core dumped) error but Program runs fine.

i am executing following program int main() { char str; FILE * fp; int i=0; ... (4 Replies)
Discussion started by: bhavesh.sapra
4 Replies

5. Shell Programming and Scripting

crontab runs only one line in iterated program

I have a crontab as below: PATH=/usr/local/sbin:/bin/:..... etc etc 0 8 * * * /home/user/jobs/poll.sh 2>/dev/null 1>/dev/null Now the script poll.sh is called at correct time and executes. This is how poll.sh looks like #!/bin/bash... (2 Replies)
Discussion started by: chakrapani
2 Replies

6. Homework & Coursework Questions

create a program that runs two processes linked oven

I need help program in C... :create a program that runs two processes linked oven (1 Reply)
Discussion started by: gizmo16
1 Replies

7. Shell Programming and Scripting

Parallel RM and FIND commands conflicting

Hi all. Long time!! Hope you're doing well.. I've stumbled on a peculiar siutaion here, and would expect help from this forum on a clean resolution. We are running an rm and find command simultaneously from two different Unix sessions of the same user(let's say USER01) and on the same... (3 Replies)
Discussion started by: kumarjt
3 Replies

8. UNIX for Beginners Questions & Answers

Where can I find the program that runs the -wc command?

Hey guys, I was wondering. When I enter a command in the terminal -wcl for a word count, where is that program located in the kernel? (7 Replies)
Discussion started by: Circuits
7 Replies

9. Shell Programming and Scripting

Egrep: conflicting matchers specified

This bit of code works fine: egrep -i '^rmcat' /etc/oratab |\ awk -F\: '{print $1}'|\ while read ORACLE_SID do But when I modified it, thus: egrep -v '^#' /etc/oratab |egrep -v '^$' | egrep -v '^listener' \ awk -F\: '{print $1}'|\ while read ORACLE_SID do (3 Replies)
Discussion started by: edstevens
3 Replies
Wx::Thread(3)						User Contributed Perl Documentation					     Wx::Thread(3)

NAME
Thread - using wxPerl with threads SYNOPSIS
# the order of these use()s is important use threads; use threads::shared; use Wx; my $DONE_EVENT : shared = Wx::NewEventType; my $worker = threads->create( &work ); # create frames, etc my $frame = Wx::Frame->new( ... ); EVT_COMMAND( $frame, -1, $DONE_EVENT, &done ); $app->MainLoop; sub done { my( $frame, $event ) = @_; print $event->GetData; } sub work { # ... do stuff, create a shared $result value my $threvent = new Wx::PlThreadEvent( -1, $DONE_EVENT, $result ); Wx::PostEvent( $frame, $threvent ); } # event handler sub OnCreateThread { # @_ = () is necessary to avoid "Scalars leaked" my( $self, $event ) = @_; @_ = (); threads->create( ... ); } DESCRIPTION
Threaded GUI application are somewhat different from non-GUI threaded applications in that the main thread (which runs the GUI) must never block. Also, in wxWidgets, no thread other than the main thread can manipulate GUI objects. This leads to a hybrid model where worker threads must send events to the main thread in order to change the GUI state or signal their termination. Order of module loading It's necessary for "use Wx" to happen after <use threads::shared>. Sending events from worker threads "Wx::PlThreadEvent" can be used to communicate between worker and GUI threads. The event can carry a shared value between threads. my $DONE_EVENT : shared = Wx::NewEventType; sub work { # ... do some stuff my $progress = new Wx::PlThreadEvent( -1, $DONE_EVENT, $progress ); Wx::PostEvent( $frame, $progress ); # ... do stuff, create a shared $result value my $end = new Wx::PlThreadEvent( -1, $DONE_EVENT, $result ); Wx::PostEvent( $frame, $end ); } The target of the event can be any "Wx::EvtHandler" Receiving events from worker threads "Wx::PlThreadEvent" is a command event and can be handled as such. The "->GetData" method can be used to retrieve the shared data contained inside the event. my $DONE_EVENT : shared = Wx::NewEventType; EVT_COMMAND( $frame, -1, $DONE_EVENT, &done ); sub done { my( $frame, $event ) = @_; print $event->GetData; } Creating new threads Creating new threads from event handlers works without problems except from a little snag. In order not to trigger a bug in the Perl interpreter, all event handler that directly or indirectly cause a thread creation must clean @_ before starting the thread. For example: sub OnCreateThread { my( $self, $event ) = @_; @_ = (); threads->create( ... ); } failure to do that will cause "scalars leaked" warnings from the Perl interpreter. perl v5.10.0 2007-04-28 Wx::Thread(3)
All times are GMT -4. The time now is 05:11 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy