From: Robert Klemme Date: 2008-06-11T03:14:53+09:00 Subject: Re: allocate particular amount of memory to a ruby thread ? On 10.06.2008 16:48, Jano Svitok wrote: > On Tue, Jun 10, 2008 at 13:46, Pokkai Dokkai wrote: >> how to allocate particular amount of memory to a ruby thread or to a >> ruby script? >> >> for example suppose if i want to start a thread it should take 1 MB >> memory only >> >> Thread.start(memory=1024*1024*1024) do |t| >> >> # some stuff here >> end >> >> is there anyway to do like this ? > > AFAIK, the memory is shared among threads, no matter whether system or ruby's. Exactly. That's the whole point of threads. > The memory for the whole ruby process/script is allocated on demand, > with some initial amount. > This amount and growing ratio is compiled-in (at least for 1.8). And there is no way to limit it. It might be possible to limit on a per process base (depending on OS, see "ulimit -a") but not on a per thread base. And there might be a limit on the stack size. But it does not make sense to limit memory allocated by a thread because the memory is shared and can be used from any thread. Kind regards robert