diff options
author | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-12-10 11:14:46 -0800 |
---|---|---|
committer | Adriaan Moors <adriaan.moors@typesafe.com> | 2013-12-10 11:14:46 -0800 |
commit | f40541788957c257ee8b4035e0063a8a48945c11 (patch) | |
tree | df574bd0aefe1e809fb890e42cdf2bf189659cfa /docs/examples/computeserver.scala | |
parent | 0c927046dc5df974e6c39187107cf3548825282b (diff) | |
parent | 27a38602decb891399fc9868b4dd7135f6e1ec2c (diff) | |
download | scala-f40541788957c257ee8b4035e0063a8a48945c11.tar.gz scala-f40541788957c257ee8b4035e0063a8a48945c11.tar.bz2 scala-f40541788957c257ee8b4035e0063a8a48945c11.zip |
Merge pull request #3248 from adriaanm/dist-cleanup-licenses
Clean up Scala distribution a bit.
Diffstat (limited to 'docs/examples/computeserver.scala')
-rw-r--r-- | docs/examples/computeserver.scala | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/docs/examples/computeserver.scala b/docs/examples/computeserver.scala deleted file mode 100644 index 788be284d1..0000000000 --- a/docs/examples/computeserver.scala +++ /dev/null @@ -1,54 +0,0 @@ -package examples - -import concurrent._, concurrent.ops._ - -class ComputeServer(n: Int) { - - private trait Job { - type t - def task: t - def ret(x: t): Unit - } - - private val openJobs = new Channel[Job]() - - private def processor(i: Int) { - while (true) { - val job = openJobs.read - println("read a job") - job.ret(job.task) - } - } - - def future[a](p: => a): () => a = { - val reply = new SyncVar[a]() - openJobs.write{ - new Job { - type t = a - def task = p - def ret(x: a) = reply.set(x) - } - } - () => reply.get - } - - //spawn(replicate(0, n) { processor }) - spawn((0 until n).par foreach { processor }) -} - -object computeserver extends App { - - def kill(delay: Int) = new java.util.Timer().schedule( - new java.util.TimerTask { - override def run() = { - println("[killed]") - sys exit 0 - } - }, - delay) // in milliseconds - - val server = new ComputeServer(1) - val f = server.future(42) - println(f()) - kill(10000) -} |