java – 直接调用run方法是不好的做法
发布时间:2020-12-15 05:03:20 所属栏目:Java 来源:网络整理
导读:大多数情况下,我想在一个新线程中运行一段代码,它会耗费一些时间,但在某些情况下我想用调用方法的线程来运行它.直接调用run方法是不好的做法吗? 如果不是一个好主意,最好将代码放在另一个可以被新线程调用或复制代码的方法中吗? 这是一些示例代码,它只是为
大多数情况下,我想在一个新线程中运行一段代码,它会耗费一些时间,但在某些情况下我想用调用方法的线程来运行它.直接调用run方法是不好的做法吗?
如果不是一个好主意,最好将代码放在另一个可以被新线程调用或复制代码的方法中吗? 这是一些示例代码,它只是为了说明我想要实现的目标: class Main { public Main() { new Thread(new WorkerThread(1,2)).start(); // This is what I'd do if I wanted it to run in a new thread. new WorkerThread(1,2).run(); // Is it bad practice to do this? } } class WorkerThread implements Runnable { private int int1,int2; public WorkerThread(int int1,int int2) { this.int1 = int1; this.int2 = int2; } public void run() { // Do something time consuming with the ints. } } 解决方法
我知道已经有很多其他的答案,但你的问题是关于“练习”,而且这个词并没有出现在任何一个中.
好的做法是编写易于其他人理解的代码,并且最好在没有任何内联注释的情况下易于理解. 调用foobar.run()没有任何问题,只要“run”的含义对于阅读程序的人来说是显而易见的. 您的类名为WorkerThread,即使它不是一个线程.这可能会让人感到困惑.并且调用workerThread.run()可能会更混淆它们是否涉及一个线程. 我会说,如果有意义的话,继续调用run()方法,但是改变类,以便读者知道你没有尝试启动一个线程并以错误的方式执行它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |