01-29-2009
poll() and select() returning guarantees that an attempted read will not block, it does not guarantee what will happen - error condition, EOF, whatever.
This is what POSIX says:
Quote:
A descriptor shall be considered ready for reading when a call to an input function with O_NONBLOCK clear would not block, whether or not the function would transfer data successfully. (The function might return data, an end-of-file indication, or an error other than one indicating that it is blocked, and in each of these cases the descriptor shall be considered ready for reading.)
Plus, there is no way to know how many bytes can be read if a read were successful.
Try just reading a single byte then poll() or select().
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I have a file that has 300 records with a load of fields. two of them are:
field_1 has between 8-9 bytes i.e. 012345678, 0123456789
field_2 has 10 bytes i.e. 01234567890
I want to be able to echo out the total of each of these fields i.e.
200 (have 8 - 9 bytes)
100 (have 10 bytes)... (3 Replies)
Discussion started by: Pablo_beezo
3 Replies
2. UNIX for Dummies Questions & Answers
Im using the vmstat command to display the CPU run queue, but i want to put that into a program so is there a way to just display the number under the r?
Thanks, (1 Reply)
Discussion started by: RAFC_99
1 Replies
3. Shell Programming and Scripting
Hi,
i have following line in my code.
eport.pl < $4 | dos2ux | head -2000 | paste -sd\| - | awk -v S="$1" '
Issue is, i get a message saying "awk:input line | found /file/path cannot be longer than 3000 bytes."
"source line number is 3"
Can someone help me with this please? (4 Replies)
Discussion started by: usustarr
4 Replies
4. AIX
Hi,
Currently we are experiencing qdaemon died, hourly.
We have more than 10,000 print queue on AIX 5.3.
Would this cause the qdaemon to die?
What is the maximum number of print queue on AIX 5.3?
Thank you in advance. (0 Replies)
Discussion started by: raybakh
0 Replies
5. Shell Programming and Scripting
1) I need a shell code to count the number of files ( without directories or sub-directories ) in a directory given as arguments I tried this code but it didn't work , maybe I tried the wrong one:
numOfFiles=`find $1 -type f -maxdepth 1 | wc -l`
I found it in another thread in this site..
... (17 Replies)
Discussion started by: jack1985
17 Replies
6. Shell Programming and Scripting
Guys,
I want to get the high CPU utilization from top.
I am using below code :
top -d2 >> /home/dba_monitoring/host_top_output.txt
echo "Script started `date`" > $runlog
usage=`grep "^ *$1" /home/dba_monitoring/host_top_output.txt | awk '{print $12}' | sed 's/%//'`
And getting below... (7 Replies)
Discussion started by: wahab
7 Replies
7. Programming
Hi,
I am using the libxml2 sax parser to parse a in memory xml string along with validating it against a schema.
I am using the following code:
xmlSAXHandlerPtr sax_ = new xmlSAXHandler();
sax_->initialized = XML_SAX2_MAGIC;
sax_->startElementNs =... (0 Replies)
Discussion started by: Sam Krishna
0 Replies
8. Shell Programming and Scripting
I am writing a bash script to find out all the files in a directory which are empty. I am running into multiple issues. I will really appreciate if someone can please help me.
#!/bin/bash
DATE=$(date +%m%d%y)
TIME=$(date +%H%M)
DIR="/home/statsetl/input/civil/test"
... (1 Reply)
Discussion started by: monasharma13
1 Replies
9. UNIX for Dummies Questions & Answers
Hello guys. I really hope someone will help me with this one..
So, I have to write this script who:
- creates a file home/student/vmdisk of 10 mb
- formats that file to ext3
- mounts that partition to /mnt/partition
- creates a file /mnt/partition/data. In this file, there will... (1 Reply)
Discussion started by: razolo13
1 Replies
10. Shell Programming and Scripting
hello,
suppose, entered input is of 1-40 bytes, i need it to be converted to 40 bytes exactly.
example: if i have entered my name anywhere between 1-40 i want it to be stored with 40 bytes exactly.
enter your name:
donald duck (this is of 11 bytes)
expected is as below - display 11... (3 Replies)
Discussion started by: shravan.300
3 Replies
LEARN ABOUT HPUX
xtapppeekevent
XtAppPeekEvent() XtAppPeekEvent()
Name
XtAppPeekEvent - return, but do not remove the event at the head of an application's input queue; block if no events are available.
Synopsis
Boolean XtAppPeekEvent(app_context, event_return)
XtAppContext app_context;
XEvent *event_return;
Inputs
app_context
Specifies the application context.
Outputs
event_return
Returns the event from the head of the queue, if that event is an X event.
Returns
True if the event at the head of the queue is an X event; False if it is a timer event or an alternate input source event.
Description
If there are X events pending on any of the displays in app_context, XtAppPeekEvent() copies the event from the head of the application
event queue into event_return (without removing the event from the queue) and returns True. If there are no events, it flushes the output
buffers of each display and checks again. If there are still no pending X events on any of the displays, but there are timer or alternate
input events ready, XtAppPeekEvent() returns False.
If there are no events of any kind, XtAppPeekEvent() blocks until one occurs, and then if it is an X event, copies the event (without
removing it from the queue) and returns True or returns False otherwise. Note that XtAppPeekEvent() never calls background work procedures
registered with XtAppAddWorkProc() .
Usage
Programs rarely need this much control over the event dispatching mechanism. Most programs use XtAppMainLoop().
If you want to get X events and remove them from the input queue, consider XtAppNextEvent(). This function also dispatches timer and
alternate input events.
If you want to check for input events without blocking, use XtAppPending(). This function returns a value that indicates which types of
events are pending for an application context, or 0 if no events are pending.
See Also
XtAppMainLoop(1), XtAppNextEvent(1), XtAppPending(1).
Xt - Event Handling XtAppPeekEvent()