public inbox for pthreads-win32@sourceware.org
 help / color / mirror / Atom feed
From: Ross Johnson <Ross.Johnson@homemail.com.au>
To: Jason Jones <jasonaptech@gmail.com>
Cc: pthreads-win32@sourceware.org
Subject: Re: Possible memory leak in Pthreads-Win32
Date: Fri, 02 Dec 2011 14:10:00 -0000	[thread overview]
Message-ID: <4ED8DBBB.4060302@homemail.com.au> (raw)
In-Reply-To: <CABYyr4FaAKXN5ADJ6rP-QEb3-ygL=F8_O54B8Us+FBxLojy45g@mail.gmail.com>

Hi Jason,

I ran your test with the pthreadVC2.dll that I've just built from the 
sources from the current cvs head and did not see any resources growing 
over time, including memory, handles, etc. Peak working set was about 
1.6MB and Working Set (Private) was about 550kB toggling between a max 
and min value with small delta but not growing at all.

The particulars for this test were:

- current cvs head revision of the code
- Windows Vista 32 bit
- MSVS 2010 Express compiler (32 bit)
- pthreadVC2.dll built by runing "nmake clean VC-inlined"
- test suite passed by running "nmake clean VC" in the tests folder
- your test compiled by running "nmake pthread_leak-1.exe" in the tests 
folder (only succeeds if run after running the test suite so that the 
required headers and libs are copied into the tests folder).

I also compiled your test using the command line in your comments 
(modified to run relative to the tests folder), i.e. without all the 
additional flags from the nmake build, and no leak there either but did 
consume slightly more memory.

You didn't indicate what version of the library you are using (pre-built 
or built from source) or any other details of your system but I'm 
reasonably confident there aren't any leaks with the current cvs head 
source revision.

Regards.
Ross

On 2/12/2011 1:11 PM, Jason Jones wrote:
> Hello!
>
> I am having memory leaks when using Pthreads-Win32. I have attached a
> very simple example program that illustrates the problem. It is very
> simple:
>
> 1) Inside a for loop, I create two threads with pthread_create.
> 2) Each of these threads executes a function that just returns 0;
> 3) I print out the return from the pthread_create calls.
> 4) Then use pthread_join on the two threads and the execute the next
> iteration of the loop.
>
> As I run this program, I can watch the memory constantly growing (
> through task manager ). If I let it run long enough, I have seen it
> use 600 megabytes of memory. If I run the same program on Linux with
> native pthreads, I do not see any memory growth no matter how long I
> let it run. On Windows I see the memory leak with Visual Studio 2008
> and also with the latest version of the Intel compiler.
>
> Is this a memory leak? Or am I doing something stupid?
>
> Thanks,
>
> Jason

      reply	other threads:[~2011-12-02 14:10 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-02  2:11 Jason Jones
2011-12-02 14:10 ` Ross Johnson [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ED8DBBB.4060302@homemail.com.au \
    --to=ross.johnson@homemail.com.au \
    --cc=jasonaptech@gmail.com \
    --cc=pthreads-win32@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).