celluloid 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -45,13 +45,8 @@ module Celluloid
45
45
  # normal Ruby objects wrapped in threads which communicate with asynchronous
46
46
  # messages. The implementation is inspired by Erlang's gen_server
47
47
  module Actor
48
- attr_reader :mailbox
49
-
50
- # Methods added to classes which include Celluloid::Actor
48
+ # Methods added to classes which include Celluloid
51
49
  module ClassMethods
52
- # Retrieve the exit handler method for this class
53
- attr_reader :exit_handler
54
-
55
50
  # Create a new actor
56
51
  def spawn(*args, &block)
57
52
  actor = allocate
@@ -68,7 +63,7 @@ module Celluloid
68
63
 
69
64
  # FIXME: this is a bit repetitive with the code above
70
65
  actor = allocate
71
- proxy = actor.__start_actor
66
+ proxy = actor.__start_actor
72
67
  current_actor.link actor
73
68
  proxy.send(:initialize, *args, &block)
74
69
 
@@ -90,15 +85,21 @@ module Celluloid
90
85
 
91
86
  # Trap errors from actors we're linked to when they exit
92
87
  def trap_exit(callback)
93
- @exit_handler = callback.to_sym
88
+ @_exit_handler = callback.to_sym
94
89
  end
90
+
91
+ # Obtain the exit handler method for this class
92
+ def exit_handler; @_exit_handler; end
95
93
  end
96
94
 
97
95
  # Instance methods added to the public API
98
96
  module InstanceMethods
97
+ # Obtain the mailbox of this actor
98
+ def mailbox; @_mailbox; end
99
+
99
100
  # Is this actor alive?
100
101
  def alive?
101
- @thread.alive?
102
+ @_thread.alive?
102
103
  end
103
104
 
104
105
  # Raise an exception in caller context, but stay running
@@ -108,7 +109,7 @@ module Celluloid
108
109
 
109
110
  # Terminate this actor
110
111
  def terminate
111
- @running = false
112
+ @_running = false
112
113
  end
113
114
 
114
115
  def inspect
@@ -116,43 +117,59 @@ module Celluloid
116
117
 
117
118
  ivars = []
118
119
  instance_variables.each do |ivar|
119
- next if %w(@mailbox @links @proxy @thread).include? ivar.to_s
120
+ ivar_name = ivar.to_s.sub(/^@_/, '')
121
+ next if %w(mailbox links signals proxy thread running).include? ivar_name
120
122
  ivars << "#{ivar}=#{instance_variable_get(ivar).inspect}"
121
123
  end
122
124
 
123
125
  str << " " << ivars.join(' ') unless ivars.empty?
124
126
  str << ">"
125
127
  end
128
+
129
+ #
130
+ # Signals
131
+ #
132
+
133
+ # Send a signal with the given name to all waiting methods
134
+ def signal(name, value = nil)
135
+ @_signals.send name, value
136
+ end
137
+
138
+ # Wait for the given signal
139
+ def wait(name)
140
+ @_signals.wait name
141
+ end
126
142
  end
127
143
 
128
144
  # Internal methods not intended as part of the public API
129
145
  module InternalMethods
130
146
  # Actor-specific initialization and startup
131
147
  def __start_actor(*args, &block)
132
- @mailbox = Mailbox.new
133
- @links = Links.new
134
- @proxy = ActorProxy.new(self, @mailbox)
135
- @running = true
148
+ @_mailbox = Mailbox.new
149
+ @_links = Links.new
150
+ @_signals = Signals.new
151
+ @_proxy = ActorProxy.new(self, @_mailbox)
152
+ @_running = true
136
153
 
137
- @thread = Thread.new do
154
+ @_thread = Thread.new do
138
155
  __init_thread
139
156
  __run_actor
140
157
  end
141
158
 
142
- @proxy
159
+ @_proxy
143
160
  end
144
161
 
145
162
  # Configure thread locals for the running thread
146
163
  def __init_thread
147
164
  Thread.current[:actor] = self
148
- Thread.current[:actor_proxy] = @proxy
149
- Thread.current[:mailbox] = @mailbox
165
+ Thread.current[:actor_proxy] = @_proxy
166
+ Thread.current[:mailbox] = @_mailbox
150
167
  end
151
168
 
152
169
  # Run the actor
153
170
  def __run_actor
154
171
  __process_messages
155
- __cleanup ExitEvent.new(@proxy)
172
+ __cleanup ExitEvent.new(@_proxy)
156
173
  rescue Exception => ex
157
174
  __handle_crash(ex)
158
175
  ensure
@@ -163,9 +180,9 @@ module Celluloid
163
180
  def __process_messages
164
181
  pending_calls = {}
165
182
 
166
- while @running
183
+ while @_running
167
184
  begin
168
- message = @mailbox.receive
185
+ message = @_mailbox.receive
169
186
  rescue ExitEvent => exit_event
170
187
  fiber = Fiber.new do
171
188
  __init_thread
@@ -179,7 +196,7 @@ module Celluloid
179
196
  end
180
197
 
181
198
  case message
182
- when SyncCall
199
+ when Call
183
200
  fiber = Fiber.new do
184
201
  __init_thread
185
202
  message.dispatch(self)
@@ -194,8 +211,6 @@ module Celluloid
194
211
  call = fiber.resume message
195
212
  pending_calls[call] = fiber if fiber.alive?
196
213
  end
197
- when AsyncCall
198
- message.dispatch(self)
199
214
  end # unexpected messages are ignored
200
215
  end
201
216
  end
@@ -215,15 +230,15 @@ module Celluloid
215
230
  # Handle any exceptions that occur within a running actor
216
231
  def __handle_crash(exception)
217
232
  __log_error(exception)
218
- __cleanup ExitEvent.new(@proxy, exception)
233
+ __cleanup ExitEvent.new(@_proxy, exception)
219
234
  rescue Exception => handler_exception
220
235
  __log_error(handler_exception, "ERROR HANDLER CRASHED!")
221
236
  end
222
237
 
223
238
  # Handle cleaning up this actor after it exits
224
239
  def __cleanup(exit_event)
225
- @mailbox.shutdown
226
- @links.send_event exit_event
240
+ @_mailbox.shutdown
241
+ @_links.send_event exit_event
227
242
  end
228
243
 
229
244
  # Log errors when an actor crashes
@@ -1,5 +1,5 @@
1
1
  !RBIX
2
- 3578385345186687227
2
+ 3246536075095810518
3
3
  18
4
4
  M
5
5
  1
@@ -742,104 +742,96 @@ x
742
742
  5
743
743
  Actor
744
744
  i
745
- 99
745
+ 91
746
746
  5
747
747
  66
748
- 5
749
- 7
750
- 0
751
- 47
752
- 49
753
- 1
754
- 1
755
- 15
756
748
  99
757
749
  7
758
- 2
750
+ 0
759
751
  65
760
752
  49
761
- 3
753
+ 1
762
754
  2
763
755
  13
764
756
  99
765
757
  12
766
758
  7
767
- 4
759
+ 2
768
760
  12
769
761
  7
770
- 5
762
+ 3
771
763
  12
772
764
  65
773
765
  12
774
766
  49
775
- 6
767
+ 4
776
768
  4
777
769
  15
778
770
  49
779
- 4
771
+ 2
780
772
  0
781
773
  15
782
774
  99
783
775
  7
784
- 7
776
+ 5
785
777
  65
786
778
  49
787
- 3
779
+ 1
788
780
  2
789
781
  13
790
782
  99
791
783
  12
792
784
  7
793
- 4
785
+ 2
794
786
  12
795
787
  7
796
- 8
788
+ 6
797
789
  12
798
790
  65
799
791
  12
800
792
  49
801
- 6
793
+ 4
802
794
  4
803
795
  15
804
796
  49
805
- 4
797
+ 2
806
798
  0
807
799
  15
808
800
  99
809
801
  7
810
- 9
802
+ 7
811
803
  65
812
804
  49
813
- 3
805
+ 1
814
806
  2
815
807
  13
816
808
  99
817
809
  12
818
810
  7
819
- 4
811
+ 2
820
812
  12
821
813
  7
822
- 10
814
+ 8
823
815
  12
824
816
  65
825
817
  12
826
818
  49
827
- 6
819
+ 4
828
820
  4
829
821
  15
830
822
  49
831
- 4
823
+ 2
832
824
  0
833
825
  15
834
826
  99
835
827
  7
836
- 11
828
+ 9
837
829
  7
838
- 12
830
+ 10
839
831
  65
840
832
  5
841
833
  49
842
- 6
834
+ 4
843
835
  4
844
836
  11
845
837
  I
@@ -854,13 +846,7 @@ I
854
846
  0
855
847
  n
856
848
  p
857
- 13
858
- x
859
- 7
860
- mailbox
861
- x
862
849
  11
863
- attr_reader
864
850
  x
865
851
  12
866
852
  ClassMethods
@@ -878,64 +864,70 @@ x
878
864
  12
879
865
  ClassMethods
880
866
  i
881
- 100
867
+ 106
882
868
  5
883
869
  66
884
- 5
885
- 7
886
- 0
887
- 47
888
- 49
889
- 1
890
- 1
891
- 15
892
870
  99
893
871
  7
894
- 2
872
+ 0
895
873
  7
896
- 3
874
+ 1
897
875
  65
898
876
  67
899
877
  49
900
- 4
878
+ 2
901
879
  0
902
880
  49
903
- 5
881
+ 3
904
882
  4
905
883
  15
906
884
  5
907
885
  7
908
- 6
886
+ 4
909
887
  7
910
- 2
888
+ 0
911
889
  47
912
890
  49
913
- 7
891
+ 5
914
892
  2
915
893
  15
916
894
  99
917
895
  7
918
- 8
896
+ 6
897
+ 7
919
898
  7
920
- 9
921
899
  65
922
900
  67
923
901
  49
924
- 4
902
+ 2
925
903
  0
926
904
  49
927
- 5
905
+ 3
928
906
  4
929
907
  15
930
908
  5
931
909
  7
932
- 10
933
- 7
934
910
  8
911
+ 7
912
+ 6
935
913
  47
936
914
  49
915
+ 5
916
+ 2
917
+ 15
918
+ 99
919
+ 7
920
+ 9
937
921
  7
922
+ 10
923
+ 65
924
+ 67
925
+ 49
938
926
  2
927
+ 0
928
+ 49
929
+ 3
930
+ 4
939
931
  15
940
932
  99
941
933
  7
@@ -945,10 +937,10 @@ i
945
937
  65
946
938
  67
947
939
  49
948
- 4
940
+ 2
949
941
  0
950
942
  49
951
- 5
943
+ 3
952
944
  4
953
945
  15
954
946
  99
@@ -959,10 +951,10 @@ i
959
951
  65
960
952
  67
961
953
  49
962
- 4
954
+ 2
963
955
  0
964
956
  49
965
- 5
957
+ 3
966
958
  4
967
959
  15
968
960
  99
@@ -973,10 +965,10 @@ i
973
965
  65
974
966
  67
975
967
  49
976
- 4
968
+ 2
977
969
  0
978
970
  49
979
- 5
971
+ 3
980
972
  4
981
973
  11
982
974
  I
@@ -993,12 +985,6 @@ n
993
985
  p
994
986
  17
995
987
  x
996
- 12
997
- exit_handler
998
- x
999
- 11
1000
- attr_reader
1001
- x
1002
988
  5
1003
989
  spawn
1004
990
  M
@@ -1092,23 +1078,23 @@ p
1092
1078
  I
1093
1079
  -1
1094
1080
  I
1095
- 38
1081
+ 33
1096
1082
  I
1097
1083
  4
1098
1084
  I
1099
- 39
1085
+ 34
1100
1086
  I
1101
1087
  a
1102
1088
  I
1103
- 3a
1089
+ 35
1104
1090
  I
1105
1091
  12
1106
1092
  I
1107
- 3b
1093
+ 36
1108
1094
  I
1109
1095
  2a
1110
1096
  I
1111
- 3c
1097
+ 37
1112
1098
  I
1113
1099
  2d
1114
1100
  x
@@ -1301,15 +1287,15 @@ p
1301
1287
  I
1302
1288
  -1
1303
1289
  I
1304
- 41
1290
+ 3c
1305
1291
  I
1306
1292
  4
1307
1293
  I
1308
- 42
1294
+ 3d
1309
1295
  I
1310
1296
  12
1311
1297
  I
1312
- 43
1298
+ 3e
1313
1299
  I
1314
1300
  24
1315
1301
  I
@@ -1317,23 +1303,23 @@ I
1317
1303
  I
1318
1304
  25
1319
1305
  I
1320
- 46
1306
+ 41
1321
1307
  I
1322
1308
  2b
1323
1309
  I
1324
- 47
1310
+ 42
1325
1311
  I
1326
1312
  33
1327
1313
  I
1328
- 48
1314
+ 43
1329
1315
  I
1330
1316
  3b
1331
1317
  I
1332
- 49
1318
+ 44
1333
1319
  I
1334
1320
  53
1335
1321
  I
1336
- 4b
1322
+ 46
1337
1323
  I
1338
1324
  56
1339
1325
  x
@@ -1436,11 +1422,11 @@ p
1436
1422
  I
1437
1423
  -1
1438
1424
  I
1439
- 51
1425
+ 4c
1440
1426
  I
1441
1427
  4
1442
1428
  I
1443
- 52
1429
+ 4d
1444
1430
  I
1445
1431
  1e
1446
1432
  x
@@ -1533,11 +1519,11 @@ p
1533
1519
  I
1534
1520
  -1
1535
1521
  I
1536
- 57
1522
+ 52
1537
1523
  I
1538
1524
  4
1539
1525
  I
1540
- 58
1526
+ 53
1541
1527
  I
1542
1528
  20
1543
1529
  x
@@ -1591,18 +1577,18 @@ x
1591
1577
  6
1592
1578
  to_sym
1593
1579
  x
1594
- 13
1595
- @exit_handler
1580
+ 14
1581
+ @_exit_handler
1596
1582
  p
1597
1583
  5
1598
1584
  I
1599
1585
  -1
1600
1586
  I
1601
- 5c
1587
+ 57
1602
1588
  I
1603
1589
  0
1604
1590
  I
1605
- 5d
1591
+ 58
1606
1592
  I
1607
1593
  8
1608
1594
  x
@@ -1613,42 +1599,86 @@ p
1613
1599
  x
1614
1600
  8
1615
1601
  callback
1602
+ x
1603
+ 12
1604
+ exit_handler
1605
+ M
1606
+ 1
1607
+ n
1608
+ n
1609
+ x
1610
+ 12
1611
+ exit_handler
1612
+ i
1613
+ 3
1614
+ 39
1615
+ 0
1616
+ 11
1617
+ I
1618
+ 1
1619
+ I
1620
+ 0
1621
+ I
1622
+ 0
1623
+ I
1624
+ 0
1625
+ I
1626
+ 0
1627
+ n
1628
+ p
1629
+ 1
1630
+ x
1631
+ 14
1632
+ @_exit_handler
1633
+ p
1634
+ 3
1635
+ I
1636
+ -1
1637
+ I
1638
+ 5c
1639
+ I
1640
+ 3
1641
+ x
1642
+ 48
1643
+ /Users/tony/src/celluloid/lib/celluloid/actor.rb
1644
+ p
1645
+ 0
1616
1646
  p
1617
1647
  17
1618
1648
  I
1619
1649
  2
1620
1650
  I
1621
- 35
1651
+ 33
1622
1652
  I
1623
- a
1653
+ 10
1624
1654
  I
1625
- 38
1655
+ 39
1626
1656
  I
1627
- 18
1657
+ 1a
1628
1658
  I
1629
- 3e
1659
+ 3c
1630
1660
  I
1631
- 22
1661
+ 28
1632
1662
  I
1633
- 41
1663
+ 48
1634
1664
  I
1635
- 30
1665
+ 32
1636
1666
  I
1637
- 4d
1667
+ 4c
1638
1668
  I
1639
- 3a
1669
+ 40
1640
1670
  I
1641
- 51
1671
+ 52
1642
1672
  I
1643
- 48
1673
+ 4e
1644
1674
  I
1645
1675
  57
1646
1676
  I
1647
- 56
1677
+ 5c
1648
1678
  I
1649
1679
  5c
1650
1680
  I
1651
- 64
1681
+ 6a
1652
1682
  x
1653
1683
  48
1654
1684
  /Users/tony/src/celluloid/lib/celluloid/actor.rb
@@ -1668,7 +1698,7 @@ x
1668
1698
  15
1669
1699
  InstanceMethods
1670
1700
  i
1671
- 58
1701
+ 100
1672
1702
  5
1673
1703
  66
1674
1704
  99
@@ -1726,20 +1756,112 @@ i
1726
1756
  49
1727
1757
  3
1728
1758
  4
1759
+ 15
1760
+ 99
1761
+ 7
1762
+ 10
1763
+ 7
1729
1764
  11
1730
- I
1731
- 5
1732
- I
1733
- 0
1734
- I
1735
- 0
1736
- I
1737
- 0
1738
- I
1765
+ 65
1766
+ 67
1767
+ 49
1768
+ 2
1739
1769
  0
1740
- n
1741
- p
1742
- 10
1770
+ 49
1771
+ 3
1772
+ 4
1773
+ 15
1774
+ 99
1775
+ 7
1776
+ 12
1777
+ 7
1778
+ 13
1779
+ 65
1780
+ 67
1781
+ 49
1782
+ 2
1783
+ 0
1784
+ 49
1785
+ 3
1786
+ 4
1787
+ 15
1788
+ 99
1789
+ 7
1790
+ 14
1791
+ 7
1792
+ 15
1793
+ 65
1794
+ 67
1795
+ 49
1796
+ 2
1797
+ 0
1798
+ 49
1799
+ 3
1800
+ 4
1801
+ 11
1802
+ I
1803
+ 5
1804
+ I
1805
+ 0
1806
+ I
1807
+ 0
1808
+ I
1809
+ 0
1810
+ I
1811
+ 0
1812
+ n
1813
+ p
1814
+ 16
1815
+ x
1816
+ 7
1817
+ mailbox
1818
+ M
1819
+ 1
1820
+ n
1821
+ n
1822
+ x
1823
+ 7
1824
+ mailbox
1825
+ i
1826
+ 3
1827
+ 39
1828
+ 0
1829
+ 11
1830
+ I
1831
+ 1
1832
+ I
1833
+ 0
1834
+ I
1835
+ 0
1836
+ I
1837
+ 0
1838
+ I
1839
+ 0
1840
+ n
1841
+ p
1842
+ 1
1843
+ x
1844
+ 9
1845
+ @_mailbox
1846
+ p
1847
+ 3
1848
+ I
1849
+ -1
1850
+ I
1851
+ 62
1852
+ I
1853
+ 3
1854
+ x
1855
+ 48
1856
+ /Users/tony/src/celluloid/lib/celluloid/actor.rb
1857
+ p
1858
+ 0
1859
+ x
1860
+ 17
1861
+ method_visibility
1862
+ x
1863
+ 15
1864
+ add_defn_method
1743
1865
  x
1744
1866
  6
1745
1867
  alive?
@@ -1772,8 +1894,8 @@ n
1772
1894
  p
1773
1895
  2
1774
1896
  x
1775
- 7
1776
- @thread
1897
+ 8
1898
+ @_thread
1777
1899
  x
1778
1900
  6
1779
1901
  alive?
@@ -1782,11 +1904,11 @@ p
1782
1904
  I
1783
1905
  -1
1784
1906
  I
1785
- 64
1907
+ 65
1786
1908
  I
1787
1909
  0
1788
1910
  I
1789
- 65
1911
+ 66
1790
1912
  I
1791
1913
  6
1792
1914
  x
@@ -1795,12 +1917,6 @@ x
1795
1917
  p
1796
1918
  0
1797
1919
  x
1798
- 17
1799
- method_visibility
1800
- x
1801
- 15
1802
- add_defn_method
1803
- x
1804
1920
  5
1805
1921
  abort
1806
1922
  M
@@ -1880,11 +1996,11 @@ p
1880
1996
  I
1881
1997
  -1
1882
1998
  I
1883
- 69
1999
+ 6a
1884
2000
  I
1885
2001
  0
1886
2002
  I
1887
- 6a
2003
+ 6b
1888
2004
  I
1889
2005
  22
1890
2006
  x
@@ -1925,18 +2041,18 @@ n
1925
2041
  p
1926
2042
  1
1927
2043
  x
1928
- 8
1929
- @running
2044
+ 9
2045
+ @_running
1930
2046
  p
1931
2047
  5
1932
2048
  I
1933
2049
  -1
1934
2050
  I
1935
- 6e
2051
+ 6f
1936
2052
  I
1937
2053
  0
1938
2054
  I
1939
- 6f
2055
+ 70
1940
2056
  I
1941
2057
  4
1942
2058
  x
@@ -2086,39 +2202,74 @@ x
2086
2202
  7
2087
2203
  inspect
2088
2204
  i
2089
- 63
2205
+ 98
2090
2206
  57
2091
2207
  19
2092
2208
  0
2093
2209
  15
2094
- 7
2210
+ 20
2211
+ 0
2212
+ 49
2213
+ 0
2095
2214
  0
2096
- 64
2097
2215
  7
2098
2216
  1
2099
- 64
2217
+ 13
2218
+ 70
2219
+ 9
2220
+ 27
2221
+ 15
2222
+ 44
2223
+ 43
2224
+ 2
2100
2225
  7
2226
+ 3
2227
+ 78
2228
+ 49
2229
+ 4
2101
2230
  2
2231
+ 6
2232
+ 1
2233
+ 7
2234
+ 5
2102
2235
  64
2236
+ 49
2237
+ 6
2238
+ 2
2239
+ 19
2240
+ 1
2241
+ 15
2242
+ 7
2103
2243
  7
2104
- 3
2244
+ 64
2245
+ 7
2246
+ 8
2247
+ 64
2248
+ 7
2249
+ 9
2250
+ 64
2251
+ 7
2252
+ 10
2253
+ 64
2254
+ 7
2255
+ 11
2256
+ 64
2257
+ 7
2258
+ 12
2105
2259
  64
2106
2260
  35
2107
- 4
2261
+ 6
2108
2262
  20
2109
- 0
2110
- 49
2111
- 4
2112
- 0
2263
+ 1
2113
2264
  49
2114
- 5
2265
+ 13
2115
2266
  1
2116
2267
  9
2117
- 32
2268
+ 67
2118
2269
  1
2119
2270
  11
2120
2271
  8
2121
- 33
2272
+ 68
2122
2273
  1
2123
2274
  15
2124
2275
  21
@@ -2128,32 +2279,32 @@ i
2128
2279
  0
2129
2280
  47
2130
2281
  101
2131
- 4
2282
+ 0
2132
2283
  7
2133
- 6
2284
+ 14
2134
2285
  5
2135
2286
  20
2136
2287
  0
2137
2288
  47
2138
2289
  49
2139
- 7
2290
+ 15
2140
2291
  1
2141
2292
  49
2142
- 8
2293
+ 16
2143
2294
  0
2144
2295
  47
2145
2296
  101
2146
- 4
2297
+ 0
2147
2298
  63
2148
2299
  3
2149
2300
  49
2150
- 9
2301
+ 17
2151
2302
  1
2152
2303
  11
2153
2304
  I
2154
- 7
2305
+ 9
2155
2306
  I
2156
- 1
2307
+ 2
2157
2308
  I
2158
2309
  1
2159
2310
  I
@@ -2162,22 +2313,44 @@ I
2162
2313
  1
2163
2314
  n
2164
2315
  p
2165
- 10
2316
+ 18
2317
+ x
2318
+ 4
2319
+ to_s
2320
+ n
2321
+ x
2322
+ 6
2323
+ Regexp
2166
2324
  s
2167
- 8
2168
- @mailbox
2325
+ 3
2326
+ ^@_
2327
+ x
2328
+ 3
2329
+ new
2169
2330
  s
2170
- 6
2171
- @links
2331
+ 0
2332
+
2333
+ x
2334
+ 3
2335
+ sub
2336
+ s
2337
+ 7
2338
+ mailbox
2339
+ s
2340
+ 5
2341
+ links
2342
+ s
2343
+ 7
2344
+ signals
2345
+ s
2346
+ 5
2347
+ proxy
2172
2348
  s
2173
2349
  6
2174
- @proxy
2350
+ thread
2175
2351
  s
2176
2352
  7
2177
- @thread
2178
- x
2179
- 4
2180
- to_s
2353
+ running
2181
2354
  x
2182
2355
  8
2183
2356
  include?
@@ -2194,34 +2367,41 @@ x
2194
2367
  2
2195
2368
  <<
2196
2369
  p
2197
- 9
2370
+ 11
2198
2371
  I
2199
2372
  0
2200
2373
  I
2201
- 76
2374
+ 77
2202
2375
  I
2203
2376
  4
2204
2377
  I
2205
- 77
2378
+ 78
2206
2379
  I
2207
- 21
2380
+ 24
2381
+ I
2382
+ 79
2383
+ I
2384
+ 44
2208
2385
  I
2209
2386
  0
2210
2387
  I
2211
- 22
2388
+ 45
2212
2389
  I
2213
- 78
2390
+ 7a
2214
2391
  I
2215
- 3f
2392
+ 62
2216
2393
  x
2217
2394
  48
2218
2395
  /Users/tony/src/celluloid/lib/celluloid/actor.rb
2219
2396
  p
2220
- 1
2397
+ 2
2221
2398
  x
2222
2399
  4
2223
2400
  ivar
2224
2401
  x
2402
+ 9
2403
+ ivar_name
2404
+ x
2225
2405
  4
2226
2406
  each
2227
2407
  x
@@ -2244,23 +2424,23 @@ p
2244
2424
  I
2245
2425
  -1
2246
2426
  I
2247
- 72
2427
+ 73
2248
2428
  I
2249
2429
  0
2250
2430
  I
2251
- 73
2431
+ 74
2252
2432
  I
2253
2433
  1e
2254
2434
  I
2255
- 75
2435
+ 76
2256
2436
  I
2257
2437
  23
2258
2438
  I
2259
- 76
2439
+ 77
2260
2440
  I
2261
2441
  2c
2262
2442
  I
2263
- 7b
2443
+ 7d
2264
2444
  I
2265
2445
  49
2266
2446
  I
@@ -2268,7 +2448,7 @@ I
2268
2448
  I
2269
2449
  4a
2270
2450
  I
2271
- 7c
2451
+ 7e
2272
2452
  I
2273
2453
  53
2274
2454
  x
@@ -2282,26 +2462,169 @@ str
2282
2462
  x
2283
2463
  5
2284
2464
  ivars
2465
+ x
2466
+ 6
2467
+ signal
2468
+ M
2469
+ 1
2470
+ n
2471
+ n
2472
+ x
2473
+ 6
2474
+ signal
2475
+ i
2476
+ 18
2477
+ 23
2478
+ 1
2479
+ 10
2480
+ 8
2481
+ 1
2482
+ 19
2483
+ 1
2484
+ 15
2485
+ 39
2486
+ 0
2487
+ 20
2488
+ 0
2489
+ 20
2490
+ 1
2491
+ 49
2492
+ 1
2493
+ 2
2494
+ 11
2495
+ I
2496
+ 5
2497
+ I
2498
+ 2
2499
+ I
2500
+ 1
2501
+ I
2502
+ 0
2503
+ I
2504
+ 2
2505
+ n
2506
+ p
2507
+ 2
2508
+ x
2509
+ 9
2510
+ @_signals
2511
+ x
2512
+ 4
2513
+ send
2285
2514
  p
2515
+ 5
2516
+ I
2517
+ -1
2518
+ I
2519
+ 86
2520
+ I
2521
+ 8
2522
+ I
2523
+ 87
2524
+ I
2525
+ 12
2526
+ x
2527
+ 48
2528
+ /Users/tony/src/celluloid/lib/celluloid/actor.rb
2529
+ p
2530
+ 2
2531
+ x
2532
+ 4
2533
+ name
2534
+ x
2535
+ 5
2536
+ value
2537
+ x
2538
+ 4
2539
+ wait
2540
+ M
2541
+ 1
2542
+ n
2543
+ n
2544
+ x
2545
+ 4
2546
+ wait
2547
+ i
2548
+ 8
2549
+ 39
2550
+ 0
2551
+ 20
2552
+ 0
2553
+ 49
2554
+ 1
2555
+ 1
2556
+ 11
2557
+ I
2558
+ 3
2559
+ I
2560
+ 1
2561
+ I
2562
+ 1
2563
+ I
2564
+ 0
2565
+ I
2566
+ 1
2567
+ n
2568
+ p
2569
+ 2
2570
+ x
2286
2571
  9
2572
+ @_signals
2573
+ x
2574
+ 4
2575
+ wait
2576
+ p
2577
+ 5
2578
+ I
2579
+ -1
2580
+ I
2581
+ 8b
2582
+ I
2583
+ 0
2584
+ I
2585
+ 8c
2586
+ I
2587
+ 8
2588
+ x
2589
+ 48
2590
+ /Users/tony/src/celluloid/lib/celluloid/actor.rb
2591
+ p
2592
+ 1
2593
+ x
2594
+ 4
2595
+ name
2596
+ p
2597
+ 15
2287
2598
  I
2288
2599
  2
2289
2600
  I
2290
- 64
2601
+ 62
2291
2602
  I
2292
2603
  10
2293
2604
  I
2294
- 69
2605
+ 65
2295
2606
  I
2296
2607
  1e
2297
2608
  I
2298
- 6e
2609
+ 6a
2299
2610
  I
2300
2611
  2c
2301
2612
  I
2302
- 72
2613
+ 6f
2303
2614
  I
2304
2615
  3a
2616
+ I
2617
+ 73
2618
+ I
2619
+ 48
2620
+ I
2621
+ 86
2622
+ I
2623
+ 56
2624
+ I
2625
+ 8b
2626
+ I
2627
+ 64
2305
2628
  x
2306
2629
  48
2307
2630
  /Users/tony/src/celluloid/lib/celluloid/actor.rb
@@ -2457,7 +2780,7 @@ x
2457
2780
  13
2458
2781
  __start_actor
2459
2782
  i
2460
- 109
2783
+ 136
2461
2784
  95
2462
2785
  19
2463
2786
  1
@@ -2524,7 +2847,34 @@ i
2524
2847
  2
2525
2848
  47
2526
2849
  9
2850
+ 79
2851
+ 47
2852
+ 49
2853
+ 3
2854
+ 0
2855
+ 13
2856
+ 47
2857
+ 49
2858
+ 4
2859
+ 0
2860
+ 15
2861
+ 8
2527
2862
  82
2863
+ 49
2864
+ 2
2865
+ 0
2866
+ 38
2867
+ 11
2868
+ 15
2869
+ 45
2870
+ 12
2871
+ 13
2872
+ 13
2873
+ 71
2874
+ 2
2875
+ 47
2876
+ 9
2877
+ 109
2528
2878
  47
2529
2879
  49
2530
2880
  3
@@ -2539,7 +2889,7 @@ i
2539
2889
  2
2540
2890
  15
2541
2891
  8
2542
- 88
2892
+ 115
2543
2893
  5
2544
2894
  39
2545
2895
  5
@@ -2547,25 +2897,25 @@ i
2547
2897
  2
2548
2898
  2
2549
2899
  38
2550
- 11
2900
+ 14
2551
2901
  15
2552
2902
  2
2553
2903
  38
2554
- 12
2904
+ 15
2555
2905
  15
2556
2906
  45
2557
- 13
2558
- 14
2907
+ 16
2908
+ 17
2559
2909
  56
2560
- 15
2910
+ 18
2561
2911
  50
2562
2912
  2
2563
2913
  0
2564
2914
  38
2565
- 16
2915
+ 19
2566
2916
  15
2567
2917
  39
2568
- 11
2918
+ 14
2569
2919
  11
2570
2920
  I
2571
2921
  6
@@ -2580,7 +2930,7 @@ I
2580
2930
  I
2581
2931
  0
2582
2932
  p
2583
- 17
2933
+ 20
2584
2934
  x
2585
2935
  7
2586
2936
  Mailbox
@@ -2595,25 +2945,32 @@ x
2595
2945
  10
2596
2946
  initialize
2597
2947
  x
2598
- 8
2599
- @mailbox
2948
+ 9
2949
+ @_mailbox
2600
2950
  x
2601
2951
  5
2602
2952
  Links
2603
2953
  n
2604
2954
  x
2605
- 6
2606
- @links
2955
+ 7
2956
+ @_links
2957
+ x
2958
+ 7
2959
+ Signals
2960
+ n
2961
+ x
2962
+ 9
2963
+ @_signals
2607
2964
  x
2608
2965
  10
2609
2966
  ActorProxy
2610
2967
  n
2611
2968
  x
2612
- 6
2613
- @proxy
2969
+ 7
2970
+ @_proxy
2614
2971
  x
2615
- 8
2616
- @running
2972
+ 9
2973
+ @_running
2617
2974
  x
2618
2975
  6
2619
2976
  Thread
@@ -2665,11 +3022,11 @@ p
2665
3022
  I
2666
3023
  0
2667
3024
  I
2668
- 8a
3025
+ 9b
2669
3026
  I
2670
3027
  4
2671
3028
  I
2672
- 8b
3029
+ 9c
2673
3030
  I
2674
3031
  8
2675
3032
  x
@@ -2678,40 +3035,44 @@ x
2678
3035
  p
2679
3036
  0
2680
3037
  x
2681
- 7
2682
- @thread
3038
+ 8
3039
+ @_thread
2683
3040
  p
2684
- 15
3041
+ 17
2685
3042
  I
2686
3043
  -1
2687
3044
  I
2688
- 83
3045
+ 93
2689
3046
  I
2690
3047
  4
2691
3048
  I
2692
- 84
3049
+ 94
2693
3050
  I
2694
3051
  1f
2695
3052
  I
2696
- 85
3053
+ 95
2697
3054
  I
2698
3055
  3a
2699
3056
  I
2700
- 86
3057
+ 96
2701
3058
  I
2702
- 5b
3059
+ 55
2703
3060
  I
2704
- 87
3061
+ 97
2705
3062
  I
2706
- 5f
3063
+ 76
2707
3064
  I
2708
- 89
3065
+ 98
2709
3066
  I
2710
- 6a
3067
+ 7a
2711
3068
  I
2712
- 8e
3069
+ 9a
3070
+ I
3071
+ 85
3072
+ I
3073
+ 9f
2713
3074
  I
2714
- 6d
3075
+ 88
2715
3076
  x
2716
3077
  48
2717
3078
  /Users/tony/src/celluloid/lib/celluloid/actor.rb
@@ -2825,33 +3186,33 @@ x
2825
3186
  11
2826
3187
  actor_proxy
2827
3188
  x
2828
- 6
2829
- @proxy
3189
+ 7
3190
+ @_proxy
2830
3191
  n
2831
3192
  x
2832
3193
  7
2833
3194
  mailbox
2834
3195
  x
2835
- 8
2836
- @mailbox
3196
+ 9
3197
+ @_mailbox
2837
3198
  p
2838
3199
  9
2839
3200
  I
2840
3201
  -1
2841
3202
  I
2842
- 92
3203
+ a3
2843
3204
  I
2844
3205
  0
2845
3206
  I
2846
- 93
3207
+ a4
2847
3208
  I
2848
3209
  11
2849
3210
  I
2850
- 94
3211
+ a5
2851
3212
  I
2852
3213
  23
2853
3214
  I
2854
- 95
3215
+ a6
2855
3216
  I
2856
3217
  35
2857
3218
  x
@@ -3019,8 +3380,8 @@ x
3019
3380
  8
3020
3381
  allocate
3021
3382
  x
3022
- 6
3023
- @proxy
3383
+ 7
3384
+ @_proxy
3024
3385
  x
3025
3386
  10
3026
3387
  initialize
@@ -3053,23 +3414,23 @@ p
3053
3414
  I
3054
3415
  -1
3055
3416
  I
3056
- 99
3417
+ aa
3057
3418
  I
3058
3419
  0
3059
3420
  I
3060
- 9a
3421
+ ab
3061
3422
  I
3062
3423
  7
3063
3424
  I
3064
- a0
3425
+ b1
3065
3426
  I
3066
3427
  e
3067
3428
  I
3068
- 9a
3429
+ ab
3069
3430
  I
3070
3431
  12
3071
3432
  I
3072
- 9b
3433
+ ac
3073
3434
  I
3074
3435
  36
3075
3436
  I
@@ -3077,19 +3438,19 @@ I
3077
3438
  I
3078
3439
  3b
3079
3440
  I
3080
- 9c
3441
+ ad
3081
3442
  I
3082
3443
  48
3083
3444
  I
3084
- 9e
3445
+ af
3085
3446
  I
3086
3447
  49
3087
3448
  I
3088
- 9c
3449
+ ad
3089
3450
  I
3090
3451
  4c
3091
3452
  I
3092
- 9d
3453
+ ae
3093
3454
  I
3094
3455
  5b
3095
3456
  I
@@ -3097,11 +3458,11 @@ I
3097
3458
  I
3098
3459
  62
3099
3460
  I
3100
- 9f
3461
+ b0
3101
3462
  I
3102
3463
  6e
3103
3464
  I
3104
- 9f
3465
+ b0
3105
3466
  I
3106
3467
  79
3107
3468
  x
@@ -3123,7 +3484,7 @@ x
3123
3484
  18
3124
3485
  __process_messages
3125
3486
  i
3126
- 260
3487
+ 241
3127
3488
  44
3128
3489
  43
3129
3490
  0
@@ -3137,7 +3498,7 @@ i
3137
3498
  39
3138
3499
  2
3139
3500
  9
3140
- 258
3501
+ 239
3141
3502
  26
3142
3503
  93
3143
3504
  0
@@ -3290,7 +3651,7 @@ i
3290
3651
  165
3291
3652
  1
3292
3653
  8
3293
- 254
3654
+ 235
3294
3655
  13
3295
3656
  45
3296
3657
  19
@@ -3356,26 +3717,7 @@ i
3356
3717
  231
3357
3718
  1
3358
3719
  8
3359
- 254
3360
- 13
3361
- 45
3362
- 23
3363
- 24
3364
- 12
3365
- 49
3366
- 7
3367
- 1
3368
- 9
3369
- 252
3370
- 15
3371
- 20
3372
- 1
3373
- 5
3374
- 49
3375
- 25
3376
- 1
3377
- 8
3378
- 254
3720
+ 235
3379
3721
  15
3380
3722
  1
3381
3723
  15
@@ -3396,7 +3738,7 @@ I
3396
3738
  0
3397
3739
  n
3398
3740
  p
3399
- 26
3741
+ 23
3400
3742
  x
3401
3743
  4
3402
3744
  Hash
@@ -3404,11 +3746,11 @@ x
3404
3746
  16
3405
3747
  new_from_literal
3406
3748
  x
3407
- 8
3408
- @running
3749
+ 9
3750
+ @_running
3409
3751
  x
3410
- 8
3411
- @mailbox
3752
+ 9
3753
+ @_mailbox
3412
3754
  x
3413
3755
  7
3414
3756
  receive
@@ -3475,11 +3817,11 @@ p
3475
3817
  I
3476
3818
  0
3477
3819
  I
3478
- ab
3820
+ bc
3479
3821
  I
3480
3822
  4
3481
3823
  I
3482
- ac
3824
+ bd
3483
3825
  I
3484
3826
  d
3485
3827
  x
@@ -3500,8 +3842,8 @@ x
3500
3842
  3
3501
3843
  []=
3502
3844
  x
3503
- 8
3504
- SyncCall
3845
+ 4
3846
+ Call
3505
3847
  n
3506
3848
  n
3507
3849
  M
@@ -3555,11 +3897,11 @@ p
3555
3897
  I
3556
3898
  0
3557
3899
  I
3558
- b8
3900
+ c9
3559
3901
  I
3560
3902
  4
3561
3903
  I
3562
- b9
3904
+ ca
3563
3905
  I
3564
3906
  c
3565
3907
  x
@@ -3577,31 +3919,24 @@ call
3577
3919
  x
3578
3920
  6
3579
3921
  delete
3580
- x
3581
- 9
3582
- AsyncCall
3583
- n
3584
- x
3585
- 8
3586
- dispatch
3587
3922
  p
3588
- 65
3923
+ 61
3589
3924
  I
3590
3925
  -1
3591
3926
  I
3592
- a3
3927
+ b4
3593
3928
  I
3594
3929
  0
3595
3930
  I
3596
- a4
3931
+ b5
3597
3932
  I
3598
3933
  a
3599
3934
  I
3600
- a6
3935
+ b7
3601
3936
  I
3602
3937
  e
3603
3938
  I
3604
- a8
3939
+ b9
3605
3940
  I
3606
3941
  1f
3607
3942
  I
@@ -3609,27 +3944,27 @@ I
3609
3944
  I
3610
3945
  24
3611
3946
  I
3612
- a9
3947
+ ba
3613
3948
  I
3614
3949
  31
3615
3950
  I
3616
- b3
3951
+ c4
3617
3952
  I
3618
3953
  32
3619
3954
  I
3620
- a9
3955
+ ba
3621
3956
  I
3622
3957
  35
3623
3958
  I
3624
- aa
3959
+ bb
3625
3960
  I
3626
3961
  40
3627
3962
  I
3628
- af
3963
+ c0
3629
3964
  I
3630
3965
  48
3631
3966
  I
3632
- b0
3967
+ c1
3633
3968
  I
3634
3969
  5f
3635
3970
  I
@@ -3637,7 +3972,7 @@ I
3637
3972
  I
3638
3973
  60
3639
3974
  I
3640
- b2
3975
+ c3
3641
3976
  I
3642
3977
  6a
3643
3978
  I
@@ -3645,23 +3980,23 @@ I
3645
3980
  I
3646
3981
  6e
3647
3982
  I
3648
- b5
3983
+ c6
3649
3984
  I
3650
3985
  70
3651
3986
  I
3652
- b6
3987
+ c7
3653
3988
  I
3654
3989
  7b
3655
3990
  I
3656
- b7
3991
+ c8
3657
3992
  I
3658
3993
  86
3659
3994
  I
3660
- bc
3995
+ cd
3661
3996
  I
3662
3997
  8e
3663
3998
  I
3664
- bd
3999
+ ce
3665
4000
  I
3666
4001
  a5
3667
4002
  I
@@ -3669,23 +4004,23 @@ I
3669
4004
  I
3670
4005
  a7
3671
4006
  I
3672
- be
4007
+ cf
3673
4008
  I
3674
4009
  b2
3675
4010
  I
3676
- bf
4011
+ d0
3677
4012
  I
3678
4013
  bf
3679
4014
  I
3680
- c1
4015
+ d2
3681
4016
  I
3682
4017
  c3
3683
4018
  I
3684
- c2
4019
+ d3
3685
4020
  I
3686
4021
  cd
3687
4022
  I
3688
- c3
4023
+ d4
3689
4024
  I
3690
4025
  e4
3691
4026
  I
@@ -3693,29 +4028,21 @@ I
3693
4028
  I
3694
4029
  e6
3695
4030
  I
3696
- c1
4031
+ d2
3697
4032
  I
3698
4033
  e7
3699
4034
  I
3700
4035
  0
3701
4036
  I
3702
- e9
3703
- I
3704
- c5
3705
- I
3706
- f4
4037
+ ea
3707
4038
  I
3708
4039
  c6
3709
4040
  I
3710
- fd
3711
- I
3712
- b5
3713
- I
3714
- fe
4041
+ eb
3715
4042
  I
3716
4043
  0
3717
4044
  I
3718
- 104
4045
+ f1
3719
4046
  x
3720
4047
  48
3721
4048
  /Users/tony/src/celluloid/lib/celluloid/actor.rb
@@ -3841,23 +4168,23 @@ p
3841
4168
  I
3842
4169
  -1
3843
4170
  I
3844
- cc
4171
+ db
3845
4172
  I
3846
4173
  0
3847
4174
  I
3848
- cd
4175
+ dc
3849
4176
  I
3850
4177
  a
3851
4178
  I
3852
- ce
4179
+ dd
3853
4180
  I
3854
4181
  e
3855
4182
  I
3856
- cf
4183
+ de
3857
4184
  I
3858
4185
  22
3859
4186
  I
3860
- ce
4187
+ dd
3861
4188
  I
3862
4189
  23
3863
4190
  I
@@ -3865,7 +4192,7 @@ I
3865
4192
  I
3866
4193
  24
3867
4194
  I
3868
- d4
4195
+ e3
3869
4196
  I
3870
4197
  38
3871
4198
  I
@@ -4021,8 +4348,8 @@ x
4021
4348
  8
4022
4349
  allocate
4023
4350
  x
4024
- 6
4025
- @proxy
4351
+ 7
4352
+ @_proxy
4026
4353
  x
4027
4354
  10
4028
4355
  initialize
@@ -4044,15 +4371,15 @@ p
4044
4371
  I
4045
4372
  -1
4046
4373
  I
4047
- d8
4374
+ e7
4048
4375
  I
4049
4376
  0
4050
4377
  I
4051
- d9
4378
+ e8
4052
4379
  I
4053
4380
  f
4054
4381
  I
4055
- da
4382
+ e9
4056
4383
  I
4057
4384
  37
4058
4385
  I
@@ -4060,19 +4387,19 @@ I
4060
4387
  I
4061
4388
  3c
4062
4389
  I
4063
- db
4390
+ ea
4064
4391
  I
4065
4392
  49
4066
4393
  I
4067
- dd
4394
+ ec
4068
4395
  I
4069
4396
  4a
4070
4397
  I
4071
- db
4398
+ ea
4072
4399
  I
4073
4400
  4d
4074
4401
  I
4075
- dc
4402
+ eb
4076
4403
  I
4077
4404
  5f
4078
4405
  I
@@ -4130,14 +4457,14 @@ n
4130
4457
  p
4131
4458
  4
4132
4459
  x
4133
- 8
4134
- @mailbox
4460
+ 9
4461
+ @_mailbox
4135
4462
  x
4136
4463
  8
4137
4464
  shutdown
4138
4465
  x
4139
- 6
4140
- @links
4466
+ 7
4467
+ @_links
4141
4468
  x
4142
4469
  10
4143
4470
  send_event
@@ -4146,15 +4473,15 @@ p
4146
4473
  I
4147
4474
  -1
4148
4475
  I
4149
- e0
4476
+ ef
4150
4477
  I
4151
4478
  0
4152
4479
  I
4153
- e1
4480
+ f0
4154
4481
  I
4155
4482
  6
4156
4483
  I
4157
- e2
4484
+ f1
4158
4485
  I
4159
4486
  e
4160
4487
  x
@@ -4319,19 +4646,19 @@ p
4319
4646
  I
4320
4647
  -1
4321
4648
  I
4322
- e7
4649
+ f6
4323
4650
  I
4324
4651
  12
4325
4652
  I
4326
- e8
4653
+ f7
4327
4654
  I
4328
4655
  30
4329
4656
  I
4330
- e9
4657
+ f8
4331
4658
  I
4332
4659
  41
4333
4660
  I
4334
- ea
4661
+ f9
4335
4662
  I
4336
4663
  57
4337
4664
  I
@@ -4354,35 +4681,35 @@ p
4354
4681
  I
4355
4682
  2
4356
4683
  I
4357
- 83
4684
+ 93
4358
4685
  I
4359
4686
  10
4360
4687
  I
4361
- 92
4688
+ a3
4362
4689
  I
4363
4690
  1e
4364
4691
  I
4365
- 99
4692
+ aa
4366
4693
  I
4367
4694
  2c
4368
4695
  I
4369
- a3
4696
+ b4
4370
4697
  I
4371
4698
  3a
4372
4699
  I
4373
- cc
4700
+ db
4374
4701
  I
4375
4702
  48
4376
4703
  I
4377
- d8
4704
+ e7
4378
4705
  I
4379
4706
  56
4380
4707
  I
4381
- e0
4708
+ ef
4382
4709
  I
4383
4710
  64
4384
4711
  I
4385
- e7
4712
+ f6
4386
4713
  I
4387
4714
  72
4388
4715
  x
@@ -4487,23 +4814,23 @@ p
4487
4814
  I
4488
4815
  -1
4489
4816
  I
4490
- ee
4817
+ fd
4491
4818
  I
4492
4819
  0
4493
4820
  I
4494
- ef
4821
+ fe
4495
4822
  I
4496
4823
  9
4497
4824
  I
4498
- f0
4825
+ ff
4499
4826
  I
4500
4827
  14
4501
4828
  I
4502
- f1
4829
+ 100
4503
4830
  I
4504
4831
  1f
4505
4832
  I
4506
- f2
4833
+ 101
4507
4834
  I
4508
4835
  2a
4509
4836
  x
@@ -4515,29 +4842,25 @@ x
4515
4842
  5
4516
4843
  klass
4517
4844
  p
4518
- 11
4845
+ 9
4519
4846
  I
4520
4847
  2
4521
4848
  I
4522
- 30
4523
- I
4524
- a
4525
- I
4526
- 33
4849
+ 31
4527
4850
  I
4528
- 24
4851
+ 1c
4529
4852
  I
4530
- 62
4853
+ 60
4531
4854
  I
4532
- 3e
4855
+ 36
4533
4856
  I
4534
- 81
4857
+ 91
4535
4858
  I
4536
- 58
4859
+ 50
4537
4860
  I
4538
- ee
4861
+ fd
4539
4862
  I
4540
- 63
4863
+ 5b
4541
4864
  x
4542
4865
  48
4543
4866
  /Users/tony/src/celluloid/lib/celluloid/actor.rb