Class: Concurrent::ThreadLocalVar

Inherits:
AbstractThreadLocalVar show all
Includes:
ThreadLocalJavaStorage, ThreadLocalRubyStorage
Defined in:
lib/concurrent/atomic/thread_local_var.rb

Overview

A ‘ThreadLocalVar` is a variable where the value is different for each thread. Each variable may have a default value, but when you modify the variable only the current thread will ever see that change.

Examples:

v = ThreadLocalVar.new(14)
v.value #=> 14
v.value = 2
v.value #=> 2
v = ThreadLocalVar.new(14)

t1 = Thread.new do
  v.value #=> 14
  v.value = 1
  v.value #=> 1
end

t2 = Thread.new do
  v.value #=> 14
  v.value = 2
  v.value #=> 2
end

v.value #=> 14

Constant Summary

Constants inherited from AbstractThreadLocalVar

AbstractThreadLocalVar::NIL_SENTINEL

Method Summary

Methods inherited from AbstractThreadLocalVar

#bind, #initialize, #value, #value=

Constructor Details

This class inherits a constructor from Concurrent::AbstractThreadLocalVar