学写多线程,在3个类里对象不知道怎么传递。
以下问题,如果用内部类的方式可以解决,但分在三个独立类里,对象参数不知道怎么传递。
这是一个要操作的类,每次运行deposit方法就为amount变量加1,用synchronized做同步。
这个类搞线程池,Account类的实例化对象放在这里。
实现Runnable接口的类,以便主类可以用线程池。必须在这个类里完成调用Account类的deposit方法,可是它的实例化对象myaccount却在AccountWithSync那个类里面。
这是一个要操作的类,每次运行deposit方法就为amount变量加1,用synchronized做同步。
public class Account {
int amount;
Account() {
}
public synchronized void deposit() {
amount += 1;
}
}这个类搞线程池,Account类的实例化对象放在这里。
public class AccountWithSync {
Account myaccount = new Account();
public static void main(String[] args) {
ExecutorService executor = Executors.newCachedThreadPool();
for (int i = 0; i < 10; i++) {
executor.execute(new addOnePenny());
}
}
}实现Runnable接口的类,以便主类可以用线程池。必须在这个类里完成调用Account类的deposit方法,可是它的实例化对象myaccount却在AccountWithSync那个类里面。
class addOnePenny implements Runnable{
@Override
public void run() {
}
}
...全文
相关推荐
多线程向线程函数传递多个参数实例
当需要在线程中使用对话框类中的资源或控件时,可以将对话框对象的指针作为参数传递给线程。由于线程可能会在主线程之后创建,因此需要确保线程对这些资源的访问是线程安全的。
java向多线程中传递参数的三种方法详细介绍
以下将详细介绍三种向Java多线程传递参数的方法。1. **通过构造方法传递数据** 当创建Thread类或其子类的实例时,可以利用构造方法来传递数据。
Activity传递对象的3种方法(全)
首先,我们需要让我们的类实现Parcelable接口,并重写其中的`writeToParcel()`和`describeContents()`方法。
vb.net多线程传递参数通过class类.rar
创建一个新的线程通常涉及定义一个Sub过程,然后将其作为`Thread`对象的构造函数参数。但这样无法直接传递参数,因此我们需要借助额外的数据结构,如自定义的Class类。
python 类之间的参数传递方式
类方法:使用`@classmethod`装饰器,第一个参数通常是类本身,其他参数可以自由传递。3. 静态方法:使用`@staticmethod`装饰器,与类或实例无关,参数传递方式与普通函数相同。


Java SE
