هل IronRuby Scriptsource.execute مؤشر ترابط آمن؟
-
21-09-2019 - |
سؤال
يتم تنفيذ تقييم التعبير عن طريق استضافة محرك IronRuby. نسخة مبسطة من المقيِّم يمكنك رؤيتها هنا.
الآن نحاول الحصول على مزيد من الأداء من IronRuby من خلال تنفيذ التعبيرات في العديد من المواضيع (وحصلنا عليها). سؤال واحد يزعجنا - هل سلاسل تنفيذ طريقة آمنة؟
المحلول
ScriptRuntime
, ScriptEngine
, ، و ScriptScope
كلها آمنة لخيط ، مصممة لاستخدامها بين المواضيع. خاصة، ScriptScope
يستخدم متجر بيانات آمن مؤشر ترابط ، لذلك ScriptScope
يمكن مشاركتها بين المواضيع.
إذا قمت بتقديم نطاقك الخاص لتنفيذ البرامج النصية الخاصة بك ، فستحتاج إلى التأكد من أن متجر بيانات SCOPE آمن مؤشر ترابط. أيضا ، عند تحور البيانات في أ ScriptScope
, ، يتم ضمان سلامة مؤشرات الترابط عن طريق القفل ، لذلك كن على علم بأن العديد من المواضيع المختلفة التي تمشن مشترك ScriptScope
سوف تتحلل الأداء. قراءة البيانات من scriptscope لا تغلق.