11-03-2005
Quote:
Originally Posted by parasa
I think there will be n process at the end. If u skip break statement then u will get 2^n process ( 2 to the power of n).
Regards,
If it all if there is any anything to be done by the child
there would be only
2^(n-1)-2 child processes
and
1 parent process
as
for validates between and 1 and < n
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
What is a fork? Why would one create a fork? What are the advantages and disadvantages of using a fork?
Please advise.
Thank You.
Deepali (5 Replies)
Discussion started by: Deepali
5 Replies
2. Programming
I run this code, actually I want to both processes print the message from "data". But only one does. What happens? Anyone can help?
#include <stdio.h>
main(){
int fd, pid;
char x;
fd = open("data",0); /* open file "data" */
pid = fork();
if(pid != 0){
wait(0);
... (2 Replies)
Discussion started by: Herman
2 Replies
3. Programming
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#define MAX_COUNT 200
#define BUF_SIZE 100
void main(void)
{
pid_t pid;
int i;
char buf;
fork();
pid = getpid();
for (i = 1; i <= MAX_COUNT; i++) {
sprintf(buf,... (2 Replies)
Discussion started by: MKSRaja
2 Replies
4. Programming
Hello all.
I'm developing a filetransfer application, which is supposed to work sort of like dcc, with multiple transfers etc. Now i wonder what the best way to manage the transfers is. Should i fork() for each new transfer, hogging loads of memory or use pthreads? Maybe I can use select to see... (0 Replies)
Discussion started by: crippe
0 Replies
5. Programming
Hi everybody,
I wanna write a code to understand how fork works.
my target
--------------
-Parent creates a file(called temp) and writes into this file "1".Then it closes the file.
-Then parent creates a child and wait until execution of this child ends.
-Then child opens the same... (3 Replies)
Discussion started by: alexicopax
3 Replies
6. UNIX for Advanced & Expert Users
Hi,
I wrote a simple program for understanding the fork command. The code is as below
int main(void)
{
fork(); printf("hi 1 \n");
fork(); printf("hi 2 \n");
fork(); printf("hi 3 \n");
}
I am getting a variation in the number of times the printf is called if i remove the \n from each of... (1 Reply)
Discussion started by: xyz123456
1 Replies
7. Programming
Hi,
I wrote a simple program for understanding the fork command. The code is as below
int main(void)
{
fork(); printf("hi 1 \n");
fork(); printf("hi 2 \n");
fork(); printf("hi 3 \n");
}
I am getting a variation in the number of times the printf is called if i remove the \n from each... (2 Replies)
Discussion started by: xyz123456
2 Replies
8. Programming
does fork() spawn only the parent process, what if fork() is looped, does it spawn the parent and the child? (4 Replies)
Discussion started by: Peevish
4 Replies
9. UNIX for Dummies Questions & Answers
I'm trying to run a simple test on how to use fork(), i'm able to execute the child process first then the parent, but how can I execute parent then child..?
Thanks! (1 Reply)
Discussion started by: l flipboi l
1 Replies
10. Programming
I understand that fork create a child but I need very simple example that make child useful....
I mean how will make the program faster anyone explain with code plz
using C plz (2 Replies)
Discussion started by: fwrlfo
2 Replies
LEARN ABOUT MOJAVE
net::server::fork5.18
Net::Server::Fork(3) User Contributed Perl Documentation Net::Server::Fork(3)
NAME
Net::Server::Fork - Net::Server personality
SYNOPSIS
use base qw(Net::Server::Fork);
sub process_request {
#...code...
}
__PACKAGE__->run();
DESCRIPTION
Please read the pod on Net::Server first. This module is a personality, or extension, or sub class, of the Net::Server module.
This personality binds to one or more ports and then waits for a client connection. When a connection is received, the server forks a
child. The child handles the request and then closes.
With the exception of parent/child signaling, this module will work (with basic functionality) on Win32 systems.
ARGUMENTS
check_for_dead
Number of seconds to wait before looking for dead children. This only takes place if the maximum number of child processes
(max_servers) has been reached. Default is 60 seconds.
max_servers
The maximum number of children to fork. The server will not accept connections until there are free children. Default is 256 children.
max_dequeue
The maximum number of dequeue processes to start. If a value of zero or undef is given, no dequeue processes will be started. The
number of running dequeue processes will be checked by the check_for_dead variable.
check_for_dequeue
Seconds to wait before forking off a dequeue process. It is intended to use the dequeue process to take care of items such as mail
queues. If a value of undef is given, no dequeue processes will be started.
CONFIGURATION FILE
See Net::Server.
PROCESS FLOW
Process flow follows Net::Server until the post_accept phase. At this point a child is forked. The parent is immediately able to wait for
another request. The child handles the request and then exits.
HOOKS
The Fork server has the following hooks in addition to the hooks provided by the Net::Server base class. See Net::Server
"$self->pre_accept_hook()"
This hook occurs just before the accept is called.
"$self->post_accept_hook()"
This hook occurs in the child after the accept and fork.
"$self->run_dequeue()"
This hook only gets called in conjunction with the check_for_dequeue setting.
HOT DEPLOY
Since version 2.000, the Fork server has accepted the TTIN and TTOU signals. When a TTIN is received, the max_servers is increased by 1.
If a TTOU signal is received the max_servers is decreased by 1. This allows for adjusting the number of handling processes without having
to restart the server.
AUTHOR
Paul Seamons <paul@seamons.com>
Rob Brown <bbb@cpan.org>
SEE ALSO
Please see also Net::Server::INET, Net::Server::PreFork, Net::Server::MultiType, Net::Server::SIG Net::Server::Single
perl v5.18.2 2013-01-09 Net::Server::Fork(3)