スレッドからUpdateResults()
という非静的メソッドを呼び出そうとしています。非静的メソッドのスレッドを使用できません
class Live
{
Thread scheduler = new Thread(UpdateResults);
public Live()
{
scheduler.Start();
}
public void UpdateResults()
{
//do some stuff
}
}
が、私はこのエラーを取得:これは私のコードです
A field initializer can not refer to the property, method or non-static field 'Live.UpdateResults()'
は、どのように私はこの問題を解決することができますか?
を初期化するには:スレッドスケジューラ '上;'私は 'フィールド 'LiveScore.scheduler' を取得するには、割り当てられているが、その値は決してありません「使用済み」は単なる警告です。 – Dillinger
コンストラクタでのみプライベートフィールドを使用しているためです。変数を別のメソッドで使用したくない場合は、コンストラクタに対してローカルにすることもできます。変数が別のメソッドから参照されるとすぐにエラーは消えます –