如何使线程等到变量初始化?

问题描述

我正在用我的主要方法来创建10个类型为java.sql.Connection的对象的列表,以实现ConnectionPool。然后,我将创建10个线程,这些线程将使用这些连接来执行查询,然后释放它们。我面临的问题是在我的函数中,我从一个列表中删除了Connection,然后将它们添加到另一个列表中。有多个线程到达它们的线程,他们尝试从列表中获取Connection对象,并且我的列表抛出indexoutofboundsexception,因为它无法从大小为0的列表中删除元素。

我的代码如下: public Connection getConnection() { Connection c=cList.remove(cList.size()-1); usedList.add(c); }

我的删除函数中出现了几个线程的indexoutofboundsexception

我的代码或线程的工作速度比创建对象快吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)