0

社内規定stop()によりスレッドは使用できません

そのためには、 を使用するstop()と、Eclipse でエラー/警告が表示されるようにする必要があります。checkstyle と PMD を使用して実現することは困難です。

4

2 に答える 2

1

おそらく、Checkstyle や PMD の代わりにFindBugsを使用することを検討する必要があります。これは、変数がインスタンスであるかどうかを確認するために変数の実行時の型を知る必要があるためですThread

私の知る限り、どのツールにも Thread.stop() ルールの検出器/チェックが組み込まれていないため、カスタム Findbugs 検出器を作成する必要があります。

これを達成するためのより簡単な方法 (ただし、エンタープライズ開発環境には適していません) は、Thread.currentThread().stop()Checkstyle と正規表現を使用して、などの発生を単純にチェックすることです。その例が必要な場合は、コメントでお知らせください。

于 2013-05-13T13:01:19.863 に答える
0

java.* クラス内で stop() またはその他のメソッドをオーバーライドすることはできません。コード スキャナーを使用して、スレッドのインスタンスで呼び出されている stop() を検索できます。

スレッドを拡張してそれを使用することもできます (クラス内で stop メソッドは何も実行できないか、スローして例外を実行できます)。

しかし、なぜ彼らはあなたにそれをしてもらいたいのですか? マルチスレッドを使用してプールを使用する場合 (および Runnable クラスのみを作成する場合)、またはスレッドを使用する必要がある場合は、スレッドの処理を停止する他の方法があります (フラグや処理中にフラグをチェックする方法、フラグを設定するセッターを使用する方法など)。別スレ)

于 2013-05-13T07:33:50.747 に答える