जैसा कि यह पहले कई बार कहा गया था, आप एक अभिनेता के अंदर एक नया धागा (actor{}
ब्लॉक में एक लंबी प्रसंस्करण गणना को डाल सकते हैं), और गणना गणना उसी थ्रेड पूल पर सुरक्षित रूप से चल जाएगी (अभिनेता शेड्यूलर द्वारा उपयोग की जाने वाली))।मौजूदा थ्रेड से सुरक्षित एक नया अभिनेता बन रहा है?
actor{
var i = 0
case msg => actor {
// computation
i = i + 1 // is `i` still thread safe?
// looks like it can be access simultaneosly from 2 two threads now
// should I make it @volatile?
}
reply(i)
}
हालांकि, यह धागा सुरक्षित हो जाएगा, और इसे का पालन करता है, सामान्य रूप में, मूल डिजाइन, जिसमें कहा गया है कि समय का एक पल में केवल एक ही धागा एक अभिनेता के साथ काम कर सकते हैं?