Sponsored Content
Top Forums Programming Problem with aio_write() function Post 22438 by hmurali on Tuesday 4th of June 2002 12:43:28 AM
Old 06-04-2002
Data Problem with aio_write() function

Hello,

How to execute a call back function after aio_write() or aio_read() in Sun Solaris 5.7?

I have filled the control block struct aiocb as follows:
aio_sigevent.sigev_signo = SIGEV
aio_sigevent.sigev_notify = SIGEV_THREAD

Then I have filled the call back function in
aio_sigevent.sigev_notify_function and the argument in sigev_value.

But, this does not execute the call back function though the asynchronous write is completed in the file.

Can someone explain why this is happening & how to correct it ?

Regards,
Murali
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

PERL function problem

I have perl script as follow. ------------------------------------------------------------------------ #! /usr/bin/env perl use strict; sub printLines { print "Inside the function.............\n"; my (@file , $count , $key ) = $_; print $count , $ key ; #... (2 Replies)
Discussion started by: avadhani
2 Replies

2. Shell Programming and Scripting

Problem with Recursive function

Hi all, I have to move all the files in a tree directory structure to a single directory. Inorder to know which file is from which directory , i'll have to add the name of the directory to the file name. For this i wrote a recursive function which is as follows... (4 Replies)
Discussion started by: malle
4 Replies

3. Shell Programming and Scripting

Function Problem and CoreDump

Hi, i have a question: i build this function: function WriteLog { .... ... print $* print $* >> FileLog .... .... } the function are called with this sintax: ..... ..... (8 Replies)
Discussion started by: ZINGARO
8 Replies

4. Shell Programming and Scripting

Problem with function script.

Need an extra set of eyes. Can't find function. Can someone help, please. Thanks echo " Is this the correct list of tapes to eject (y/n)?" read option echo $option case $option in y|Y) TAPE_ROUTINE;; ... (3 Replies)
Discussion started by: gzs553
3 Replies

5. Shell Programming and Scripting

problem, with if condition in function

Hi All, I have a function which reads parameter and gets the value from config file. The entry in the file can be either of two Name=value or Name=value so if the variant is not present it should return me the generic value ie Name without variant. I am first searching for variant in... (4 Replies)
Discussion started by: gurukottur
4 Replies

6. Shell Programming and Scripting

mail function problem

Hello all, I'm attempting to sent an e-mail with the following funtion in my script. The tested that the logic is correct with another native os command, but I can't seem to get mail to work. I played with the "", just can't seem to get it right. Any ideas? Thanks. $my_mail = `mail... (4 Replies)
Discussion started by: jwholey
4 Replies

7. Shell Programming and Scripting

Calling Function Problem

Hi, I had a scripts which calls two function. One function will call another function, script is working fine but the second function is not calling the first function. Below is the script #!/usr/bin/ksh fun1() { echo $DATETIME >> Test1.ksh return 0 } fun2() { typeset DATETIME=`date... (5 Replies)
Discussion started by: somu_june
5 Replies

8. Shell Programming and Scripting

Problem using function in awk

I created two functions that output two random variables. I want to output them in the output file. But it does not seem to work. # Function rgaussian1(r1, r2) # Gaussian random number generator function rgaussian1(r1, r2) { pi = 3.142 v1 = sqrt( -2 * log(rand()) ) v2... (18 Replies)
Discussion started by: kristinu
18 Replies

9. Shell Programming and Scripting

Function problem

hey guys, im trying to learn bourne shell atm and I'm having some issues with functions. so heres my code: #!/bin/bash ##functions memory () { free -m } space () { df -h } ip () { (5 Replies)
Discussion started by: hawkfro12
5 Replies

10. Shell Programming and Scripting

Bash function problem

I am trying to figure out why I am having a "problem" with some functions in a bash script I am running. The reason for air quoting is that the functions are working, they are just not displaying anything to screen when called from another function. Here's an example: function Create_Input {... (6 Replies)
Discussion started by: dagamier
6 Replies
aio_write(3)						     Library Functions Manual						      aio_write(3)

NAME
aio_write - Queues a single asynchronous write request (P1003.1b) LIBRARY
Asynchronous I/O Library (libaio, libaio_raw) SYNOPSIS
#include <aio.h> int aio_write ( struct aiocb *aiocbp ); PARAMETERS
*aiocbp A pointer to an aiocb structure. DESCRIPTION
The aio_write function allows the calling process to asynchronously write aiocbp->aio_nbytes to the file, raw disk partition, or connected socket associated with aiocbp->aio_fildes from the buffer pointed to by aiocbp->aio_buf. The aio_write function issues a write request and returns, even when the data cannot be written immediately. If the request cannot be ini- tiated, the function returns with an error status. If an error condition occurs during queuing, the function call returns without initiat- ing the queue request. The aiocbp argument points to an asynchronous control block structure, aiocb, used in the asynchronous I/O interfaces. The aiocb structure contains asynchronous operation information, such as the number of bytes for the write operation and the buffer containing the data to be written to the file descriptor specified in the aio_fildes member of the aiocb structure. The aiocbp value can be used as an argument to the aio_error and aio_return functions to determine the error or return status of the asyn- chronous write operation. The aiocb structure has the following members: int aio_fildes; off_t aio_offset; volatile void *aio_buf; size_t aio_nbytes; int aio_reqprio; struct sigevent aio_sigevent; int aio_lio_opcode The aio_fildes member is the file descriptor (file, raw disk partition, or connected socket) on which the asynchronous operation is to be performed. If the file descriptor is for a file or raw disk partition and O_APPEND is set for the file descriptor, write operations append to the file in the same order as the calls were made. If O_APPEND is not set, the requested operation takes place at the position in the file given by aio_offset (as if the lseek function were called prior to the operation with an offset equal to aio_offset and a whence set to SEEK_SET). After any asynchronous I/O operation, aio_offset member is undefined and must be set explicitly for every asynchronous I/O request. The aio_nbytes and aio_buf members are the same as the nbyte and buf arguments defined by the read, write, and fsync functions. The aio_sigevent member of the aiocb structure defines the signal generated when the I/O operation is complete. If aio_sigevent.sigev_notify equals SIGEV_SIGNAL and aio_sigevent.sigev_signo is non-zero, a signal is generated when the asynchronous write operation has completed. The aio_lio_opcode and the aio_reqprio members are ignored by aio_write(). Pending I/O operations are handled as follows: o On close, _exit, or exec, any I/O that was directed to a file system file, a tty device, or a streams device is canceled. Any I/O that was directed to any raw character device, excluding terminal and streams devices, is not canceled. o On fork, no asynchronous I/O is inherited. RETURN VALUES
On an unsuccessful call, a value of -1 is returned and errno is set to indicate the type of error that occurred. ERRORS
The aio_write function fails under the following conditions: [EAGAIN] The requested asynchronous I/O operation was not queued due to system resource limitations. [EBADF] The aiocbp->aio_fildes argument is not a valid file descriptor open for writing. [EINVAL] The file offset value implied by aiocbp->aio_offset would be invalid, or aiocbp->aio_nbytes is an invalid value. If the I/O operation is successfully queued, a value of 0 (zero) is returned. After successful queuing of aio_write, return and error val- ues are the same as for a call to the write function. One of the following additional errors may occur: [ECANCELED] The operation was canceled by aio_cancel. [EINVAL] The offset in aio_offset is invalid for the file specified. RELATED INFORMATION
Functions: close(2), exec(2), _exit(2), fork(2), lseek(2), read(2), write(2), aio_cancel(3), aio_error(3), aio_group_completion_np(3), aio_read(3), aio_results_np(3), aio_suspend(3), aio_return(3), lio_listio(3) Guide to Realtime Programming delim off aio_write(3)
All times are GMT -4. The time now is 02:08 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy