# Code Review: ThreadSafety7

**URL:** <https://www.ruby-forum.com/t/code-review-threadsafety7/158524>\
**Category:** IronRuby\
**Created:** [January 24, 2009, 8:45am UTC](https://www.ruby-forum.com/t/code-review-threadsafety7/158524 "2009-01-24T08:45:54Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [January 24, 2009, 8:45am UTC](https://www.ruby-forum.com/t/code-review-threadsafety7/158524/1 "2009-01-24T08:45:54Z")

</div>

tfpt review “/shelveset:ThreadSafety7;REDMOND\tomat”  
Comment :  
Makes operations on class hierarchy thread-safe. A class-hierarchy  
lock is defined on RubyContext. The lock should be acquired by any  
reader or writer that accesses the mutable state on hierarchy (such as  
method and constant tables on modules/classes, mixin lists, etc.).

```
Fixes implementation of private/public/protected/module_function 

```

that take a list of symbols. These methods define a stub method in the  
current module that has given visibility and forwards any call to it to  
super class (as if “super” was used). Implements this behavior via  
RubyMemberInfo with SuperForwarder flag set.

```
Improves generated initializers to generate more efficient code.

Fixes bugs:
[ironruby-Bugs-23510] Methods are being cloned when they are 

```

private in subclasses  
[ironruby-Bugs-22362] module\_function

Tomas

---

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [January 26, 2009, 7:32pm UTC](https://www.ruby-forum.com/t/code-review-threadsafety7/158524/2 "2009-01-26T19:32:26Z")

</div>

Wow, that’s a lot of changes… looks good!
