28 using System.Collections;
29 using System.Collections.Generic;
30 using OpenSim.Region.OptionalModules.Scripting.Minimodule;
39 Host.Console.Info(
"Microthreaded " + param);
42 Host.Console.Info(
"Microthreaded 2" + param);
47 Host.Console.Info(
"Microthreaded Looped " + c +
" " + param);
59 List<IEnumerator> threads =
new List<IEnumerator>();
60 threads.Add(TestMicrothread(
"A").GetEnumerator());
61 threads.Add(TestMicrothread(
"B").GetEnumerator());
62 threads.Add(TestMicrothread(
"C").GetEnumerator());
67 while (threads.Count > 0)
70 bool running = threads[i%threads.Count].MoveNext();
73 threads.Remove(threads[i%threads.Count]);
80 Host.Object.Say(
"Hello, Avatar!");
84 Host.Object.OnTouch += OnTouched;
90 Host.Object.Say(
"Touched.");
93 public override void Stop()
void Microthread(IEnumerable thread)
System.Collections.IEnumerable IEnumerable