04-14-2010
A socket is a file descriptor. All file descriptors have an implicit close() performed on them during image rundown. When you close a listener socket fd the port will likely go into TIMED_WAIT state.
If TIMED_WAIT is not a problem the socket part is pretty clear.
Am not clear on your resources question - do you call pthread_exit() from main - or the equivalent of that- on signal receipt? Or are we talking signals you cannot block? pthread_cancel()?
Last edited by jim mcnamara; 04-14-2010 at 08:56 AM..
10 More Discussions You Might Find Interesting
1. Programming
Listener thread is maintained at server side :
I have Implemented as:
/* specify queue */
listen(sockfd, 5);
while (1) {
clilen = sizeof(cli_addr);
newsockfd = accept(sockfd,
(struct sockaddr *) &cli_addr, &clilen);
if... (0 Replies)
Discussion started by: shilpi_gup
0 Replies
2. IP Networking
Hi Friends,
I have written a program which will listener for more than 1000 requests per second from a single socket descriptor and then it will process those requestes. Its taking X amount of time. Now i want to reduce that time. Will I can write multiple threads to receive the... (2 Replies)
Discussion started by: pa.chidhambaram
2 Replies
3. UNIX for Advanced & Expert Users
Hi,
I was porting ipv4 application to ipv6; i was done with TCP transports. Now i am facing problem with SCTp transport at runtime.
To test SCTP transport I am using following server and client socket programs. Server program runs fine, but client program fails giving Invalid Arguments for... (0 Replies)
Discussion started by: chandrutiptur
0 Replies
4. Programming
Why does this socket function only read the first 1440 chars of the stream. Why not the whole stream ? I checked it with gdm and valgrind and everything seems correct...
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
#include... (3 Replies)
Discussion started by: cyler
3 Replies
5. Programming
Dear Experts,
i am compiling my code in suse 4.1 which is compiling fine,
but at runtime it is showing me for socket programming error no 88
as i searched in errno.h it is telling me socket operation on non socket,
what is the meaning of this , how to deal with this error , please... (1 Reply)
Discussion started by: vin_pll
1 Replies
6. Shell Programming and Scripting
I had issues with processes locking up. This script checks for processes and kills them if they are older than a certain time.
Its uses some functions you'll need to define or remove, like slog() which I use for logging, and is_running() which checks if this script is already running so you can... (0 Replies)
Discussion started by: sukerman
0 Replies
7. IP Networking
I need clarification on whether it is okay to set socket options on a listening socket
simultaneously when it is being used in an accept() call?
Following is the scenario:-
-- Task 1 - is executing in a loop - polling a listen socket, lets call it 'fd', (whose file descriptor is global)... (2 Replies)
Discussion started by: jake24
2 Replies
8. AIX
I have a cold backup script which backs up my database and then restarts the oracle listener and database at around 01:30
I can see at this time that my database and listener are indeed running. However at around 02:17 my listener process receives a SIGHUP 1 signal from the AIX OS ( version 5.3 )... (2 Replies)
Discussion started by: jimthompson
2 Replies
9. IP Networking
Hello to all,
I have below function, but the thread will be bloked at the line
delete pListenSocket; // Close and delete
If I put some cpu timing switching function prior to it, then no blocking pop up.
printf("xyz\n"); // or sleep(100);
delete pListenSocket; // Close and... (1 Reply)
Discussion started by: shinypro
1 Replies
10. Programming
What is the best way for a parent to kill a child thread that has blocked on a command it cannot finish and will never read another line of its code? Will pthread_cancel() work with a thread that will never stop processing its current line of code? Thanks. (4 Replies)
Discussion started by: Brandon9000
4 Replies
LEARN ABOUT DEBIAN
iv_thread
iv_thread(3) ivykis programmer's manual iv_thread(3)
NAME
iv_thread_create, iv_thread_set_debug_state - ivykis thread convenience functions
SYNOPSIS
#include <iv_thread.h>
int iv_thread_create(char *name, void (*start_routine)(void *), void *arg);
void iv_thread_set_debug_state(int state);
DESCRIPTION
iv_thread_create is a wrapper around pthread_create(3) which will maintain an ivykis main loop reference in the calling thread (which must
be an ivykis(3) thread, i.e. have had iv_init(3) called in it) for as long as the created thread is alive.
Maintaining a reference on the calling thread's ivykis event loop makes sure that the calling thread will not return from its ivykis main
loop before the created thread exits, as that could cause cleanup still happening in the created thread to be interrupted when the calling
thread subsequently calls exit(3).
The created thread need not be an ivykis thread.
Enabling debugging by calling iv_thread_set_debug with a nonzero argument will print a debug message to standard error whenever a thread is
created via iv_thread_create, whenever a thread so created terminates normally by returning from its start_routine, self-terminates by
calling pthread_exit(3), or is successfully canceled by pthread_cancel(3), and whenever destruction of such a thread is signaled back to
the calling thread.
For inter-thread signaling, iv_thread uses iv_event(3).
SEE ALSO
ivykis(3), iv_event(3), exit(3), pthread_cancel(3), pthread_create(3), pthread_exit(3)
ivykis 2010-09-13 iv_thread(3)