[#27003] [Bug #2422] splat operator fails on array of 1 element — Raul Parolari <redmine@...>

Bug #2422: splat operator fails on array of 1 element

12 messages 2009/12/02

[#27025] [Backport #2431] StringIO#{gets,readlines} with "" (paragraph mode) trims last "\n" — Hiroshi NAKAMURA <redmine@...>

Backport #2431: StringIO#{gets,readlines} with "" (paragraph mode) trims last "\n"

8 messages 2009/12/04

[#27086] [Feature #2454] OpenSSL has no maintainer — Yui NARUSE <redmine@...>

Feature #2454: OpenSSL has no maintainer

16 messages 2009/12/07

[#27120] #to_enum ignores block? — Roger Pack <rogerdpack@...>

Is #to_enum ignoring its block expected?

11 messages 2009/12/09

[#27135] better GC? — Roger Pack <rogerdpack@...>

Could I put in a small plea for a better GC?

56 messages 2009/12/10
[#27136] Re: better GC? — Yukihiro Matsumoto <matz@...> 2009/12/11

Hi,

[#27476] Re: better GC? — Paul Brannan <pbrannan@...> 2010/01/07

On Fri, Dec 11, 2009 at 09:07:16AM +0900, Yukihiro Matsumoto wrote:

[#27477] Re: better GC? — Eero Saynatkari <ruby-ml@...> 2010/01/07

Excerpts from Paul Brannan's message of Thu Jan 07 21:53:34 +0200 2010:

[#27563] Re: better GC? — Brent Roman <brent@...> 2010/01/12

[#27199] [Backport #2488] thread usage can result in bad HANDLE — Roger Pack <redmine@...>

Backport #2488: thread usage can result in bad HANDLE

12 messages 2009/12/16

[#27286] [Bug #2515] Array#select! — Roger Pack <redmine@...>

Bug #2515: Array#select!

17 messages 2009/12/22

[#27327] [Bug #2531] Ruby 1.8.7-p248 fails to cross-compile same version — Luis Lavena <redmine@...>

Bug #2531: Ruby 1.8.7-p248 fails to cross-compile same version

9 messages 2009/12/25

[#27360] [Feature #2542] URI lib should be updated to RFC 39886 — Marc-Andre Lafortune <redmine@...>

Feature #2542: URI lib should be updated to RFC 39886

15 messages 2009/12/31

[ruby-core:27252] Re: [Bug #2505] Threads behave inconsistently across platforms.

From: Yusuke ENDOH <mame@...>
Date: 2009-12-20 18:22:11 UTC
List: ruby-core #27252
Hi,

2009/12/21 Christian Holtje <redmine@ruby-lang.org>:
> Issue #2505 has been updated by Christian Holtje.
>
>
>> > Some examples:
>> >  priority doesn't do the same thing on Solaris than Linux.
>> >  loop{} will lock the process up in Solaris, but not Linux.
>>
>> They may true.  If a difference cause a practical problem, please report=
 it.
>
> http://redmine.ruby-lang.org/issues/show/1169 - priority

It is duplicated not only in Solaris but also in Linux.  It is
difficult to support thread priority.  IMO, we should think that
Thread#priority=3D is already deprecated.


> http://redmine.ruby-lang.org/issues/show/2359 - loop{}

Not duplicated.


> These are just two examples.  Threading across platforms is very differen=
t.  Heck, some platforms have multiple versions of threads.

You are right.  Could you please report individually?


>> These two are wrong.
>> Ruby 1.9 uses native threads but still use GIL just because of the probl=
em you pointing out.
>
> I know that the GIL is still being used, but this still doesn't protect d=
ata-structures that aren't ready for native threads.  A C extension can sti=
ll be thread-unsafe and fail in hard to understand and debug ways.

I cannot get your point.  GIL locks not only code of Ruby but also
code of C extension.  IWO, an execution of code in C extension is
not interrupted (unless you use BLOCKING_REGION or create new thread
explicitly).  Even so, it can be thread-unsafe so easily?


> Having a new class that uses the native threads without the GIL everyplac=
e would have been a better solution than potentially breaking.

It might be something that is currently developped, called MVM.


> Or using something that is completely data safe, like using erlang style =
message passing with processes, would be even better and more platform inde=
pendent; C extensions wouldn't have to worry about being thread safe and lo=
cks wouldn't be needed for passing information around.

It is not Ruby :-(

--=20
Yusuke ENDOH <mame@tsg.ne.jp>

In This Thread