| 1 | struct Server {} |
| 2 | |
| 3 | fn (server Server) non_mutable_receiver() { |
| 4 | println(@LOCATION) |
| 5 | } |
| 6 | |
| 7 | fn (mut s Server) mutable_receiver() { |
| 8 | println(@LOCATION) |
| 9 | } |
| 10 | |
| 11 | fn (s &Server) reference_receiver() { |
| 12 | println(@LOCATION) |
| 13 | } |
| 14 | |
| 15 | fn test_spawning_threads_with_methods_that_have_mutable_and_non_mutable_receivers() { |
| 16 | mut server := &Server{} |
| 17 | t1 := spawn server.non_mutable_receiver() |
| 18 | t2 := spawn server.mutable_receiver() |
| 19 | t3 := spawn server.reference_receiver() |
| 20 | t1.wait() |
| 21 | t2.wait() |
| 22 | t3.wait() |
| 23 | } |
| 24 | |