From: KOSAKI Motohiro Date: 2012-07-21T14:53:15+09:00 Subject: [ruby-dev:45989] Re: [ruby-trunk - Feature #6694] Thread.new without block. > I don't think I understand your question. To summarize my objection to this proposed API change: Thread stack size should be something set at the VM level completely outside of Ruby code. Ruby code should not be coupled with implementation details. If I understand correctly, you suggested Thread and Fiber should have enough large stack size. I 100% agree. Then almost all ruby programmers don't need bother stack size issue. The problem is, *current* fiber implementation have merely very small stack size and it often caused stack overflow issue. Why it is so small? Because of, larger stack size restricted maximum number of fibers. Think, stack-size * number-of-fibers should be < 3G if system is running on 32bit OS. So, we hope to increase stack size for just your opinion. but it has one down size. it reduce a number of maximum fibers. The next question is, anybody need such so many thread/fibers? Is this real issue? Unfortunately, we can't answer it. It depend on ruby scripts. Out of ruby world, I know some game programmer prefer to create a lot of fibers. But I don't know real ruby use case. However, I hope to keep *a way* to create a lot of fibers if programmer don't hesitate deep system/cpu depending scripts. Finally, if you agree fiber issue and you think only fiber should have stack size parameter, can you please explain why do you dislike thread and fiber have the same interface? Usually, thread and fiber should keep same or similar interface because it reduce learning cost. Thank you.