X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-1.1 required=5.0 	tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
In-Reply-To: <20091123091612.GE29173@calimero.vinschen.de>
References: <20091119094439.GC29173@calimero.vinschen.de> 	 <f4d6f44b0911191814r4653debfu24cbd4afd956f117@mail.gmail.com> 	 <20091120093210.GQ29173@calimero.vinschen.de> 	 <f4d6f44b0911202003j71954bf0lf5b6696acdfe7e7d@mail.gmail.com> 	 <20091121110204.GB23273@calimero.vinschen.de> 	 <f4d6f44b0911210743r221b5107qfa4ebee00c9a97e9@mail.gmail.com> 	 <20091121212239.GD29173@calimero.vinschen.de> 	 <f4d6f44b0911211733t15929d5ctac8e06c977bbc10c@mail.gmail.com> 	 <20091123091612.GE29173@calimero.vinschen.de>
Date: Mon, 23 Nov 2009 17:43:33 +0800
Message-ID: <f4d6f44b0911230143k6437ea31n4a7788fdeef8393b@mail.gmail.com>
Subject: Re: [1.7] Updated: cygwin-1.7.0-65
From: Huang Bambo <bambo.huang@gmail.com>
To: cygwin@cygwin.com
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
Precedence: bulk
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie.com@cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

2009/11/23 Corinna Vinschen <corinna-cygwin@cygwin.com>:
> On Nov 22 09:33, Huang Bambo wrote:
>> And there's another quesiton:
>> The handle of chile process( created by fork ) seems never been closed
>> bye parent process. Is it need to be closed?
>
> I don't understand the question. =A0There's one dangling socket handle le=
ft
> and I know where and why it happens. =A0Other than that, I don't see any
> other socket handling which is left open accidentally.
>
While run my last test code, every time comes one connection, there
are 3 handle leak( I monited it by Process Explorer( from
www.sysinternals.com)), one is the chile process's handle, one is of
"Section	\BaseNamedObjects\cygwin1S5-9770bb4ddbd85dca\cygpid.xxxx",
the other one is of \Device\Afd.
I mean is there any other leak with those handles.
Simple code like the following will not leak anything:
#include <unistd.h>
#include <stdio.h>

int main(void)
{
	pid_t pid =3D fork();
	while(1)
	{
		if ( pid =3D=3D 0 )
		{
			sleep(5);
			printf("Child: %d ended\n", getpid());
			return 0;
		}
		else if ( pid > 0 )
		{
			printf("New process forked.\n");
			sleep(10);
		}
	}
}

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

