Skip to content

Commit 81ea986

Browse files
committed
Allow use of DelegateClass in ractors
Tempfile uses DelegateClass and Tempfile should be able to be used by different ractors.
1 parent d035645 commit 81ea986

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

lib/delegate.rb

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -345,10 +345,16 @@ def __setobj__(obj)
345345
end
346346

347347
def Delegator.delegating_block(mid) # :nodoc:
348-
lambda do |*args, &block|
348+
prok = lambda do |*args, &block|
349349
target = self.__getobj__
350350
target.__send__(mid, *args, &block)
351-
end.ruby2_keywords
351+
end
352+
prok.ruby2_keywords
353+
if defined?(Ractor.shareable_proc)
354+
Ractor.shareable_proc(&prok)
355+
else
356+
prok
357+
end
352358
end
353359

354360
#

0 commit comments

Comments
 (0)