私はscalaの分散アクターで遊んでいます。非常に素晴らしい。
着信関数オブジェクトを実行するサーバーがあります。たとえば、クライアントは
object Tasks {
def foo = {Console.println("I am Foo")};
def bar = {Console.println("I am Bar");}
}
// In client actor...
...
server ! Tasks.foo _
...
サーバーはこれらを取得して、次のようなアクター コードで実行できます。
react {
case task:(()=>Unit) =>
task()
これはすべてうまく機能します (これは非常にクールです) がscalac
、サーバー コードに対して出力される警告メッセージに当惑しています。
warning: non variable type-argument Unit in type pattern is unchecked since it is eliminated by erasure
case task:(()=>Unit) =>
^
この警告をクリーンアップするにはどうすればよいですか?
(型と引数のない関数Unit
の型の違いはよくわかりません。 で一致させようとしても警告は発生しませんが、実際には着信タスクと一致しません。)()=>Unit
task:Unit
react
Sun の Java6 を使用して、Debian で Scala 2.7.5 を使用します。