arraylist再什么情况下用会出现不安全的情况啊!分不够还可以给啊!谢谢阿

guaigm 2004-10-14 08:57:27
不是说arraylist线程不安全吗?
但是不知道为什么啊?
能说说吗?

另外如果不安全怎么解决啊?
...全文
187 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
debug158 2004-11-20
  • 打赏
  • 举报
回复
ding
禽兽v5 2004-10-20
  • 打赏
  • 举报
回复
受之有愧。
禽兽v5 2004-10-19
  • 打赏
  • 举报
回复
你用 wwwer1(武陵豪杰) 的方法也可以。

我提供的是jdk 1.4帮助里的示例。你直接查api文档可以找到说明。英文的就不翻译了。
guaigm 2004-10-19
  • 打赏
  • 举报
回复
List list = Collections.synchronizedList(new ArrayList());
...
synchronized(list)
{
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
{
// do something...
}
}



这是什么意思能讲讲吗?
guaigm 2004-10-19
  • 打赏
  • 举报
回复
List list = Collections.synchronizedList(new ArrayList());
...
synchronized(list)
{
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
{
// do something...
}
}



这是什么意思能讲讲吗?
guaigm 2004-10-19
  • 打赏
  • 举报
回复
List list = Collections.synchronizedList(new ArrayList());
...
synchronized(list)
{
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
{
// do something...
}
}



这是什么意思能讲讲吗?
guaigm 2004-10-16
  • 打赏
  • 举报
回复
List list = Collections.synchronizedList(new ArrayList());
...
synchronized(list)
{
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
{
// do something...
}
}



这是什么意思能讲讲吗?
shangqiao 2004-10-16
  • 打赏
  • 举报
回复
举个最简单的例子,比如你在开发web程序时,将ArrayList数据存入application作用域那么就会出现问题
guaigm 2004-10-15
  • 打赏
  • 举报
回复
ArrayList上需要加synchronized以便使他同步。

怎么加啊!
guaigm 2004-10-15
  • 打赏
  • 举报
回复
ArrayList上需要加synchronized以便使他同步。

怎么加啊!
guaigm 2004-10-15
  • 打赏
  • 举报
回复
ArrayList上需要加synchronized以便使他同步。

怎么加啊!
dengyin2000 2004-10-15
  • 打赏
  • 举报
回复
ThreadLocal!
cold_blooded 2004-10-15
  • 打赏
  • 举报
回复
ArrayList,HashMap是异步的。(新API)--A
Vector,HashTable是同步的。(老API) --B

一般情况下没什么问题,但推荐使用A.
在有线程操作的情况下就不同了,以为有同步异步的关系。
所以ArrayList上需要加synchronized以便使他同步。
禽兽v5 2004-10-15
  • 打赏
  • 举报
回复
List list = Collections.synchronizedList(new ArrayList());
...
synchronized(list)
{
Iterator i = list.iterator(); // Must be in synchronized block
while (i.hasNext())
{
// do something...
}
}
dlinyo 2004-10-15
  • 打赏
  • 举报
回复
楼上解释得很通俗,是正确的,用法也是对的。
johncdc 2004-10-15
  • 打赏
  • 举报
回复
gz
hao
wwwer1 2004-10-15
  • 打赏
  • 举报
回复
ArrayList a1=new ArrayList();
synchronized(a1){

write your code;

}
相当于给a1加了一把锁,执行完括号里面的自动解索
禽兽v5 2004-10-14
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/3307/3307963.xml?temp=1.112002E-02
guaigm 2004-10-14
  • 打赏
  • 举报
回复
e文不好啊。。。。55
guaigm 2004-10-14
  • 打赏
  • 举报
回复
在多线程的情况下,就把你的ArrayList类变量进行synchronized就可以放心的用了


怎么用synchronized啊?

不安全是指出会出现什么情况呢?
加载更多回复(2)
内容概要:本文详细介绍了Anaconda的下载、安装与配置方法(2025最新版)。Anaconda是一个开源的Python/R数据科学集成开发平台,预装了1500多个科学计算库,并提供conda包管理和环境管理功能。文章首先列出了系统要求,接着别讲述了适用于不同操作系统的下载方式,包括官方下载和国内镜像下载。然后,具体讲解了Windows、macOS和Linux三种操作系统的安装步骤,以及环境变量的手动配置方法。此外,还提供了验证安装是否成功的命令和配置国内镜像源的方法,以提高下载速度。最后,列出了一些常用conda命令和常见问题的解决方案。 适合人群:从事数据科学、机器学习领域的研究人员和开发者,特别是需要频繁使用Python科学计算库的用户。 使用场景及目标:①帮助用户快速搭建Python开发环境,尤其是需要多个Python版本共存或隔离环境的情况下;②解决因网络原因导致的下载速度慢的问题;③提供详细的安装指南,确保安装过程顺利进行;④指导用户正确配置环境变量,避免常见的安装后无法使用的错误。 阅读建议:由于Anaconda涉及多平台安装和配置,建议读者根据自己的操作系统选择相应的章节重点阅读,并严格按照步骤操作。对于初次使用者,建议先从简单的安装入手,再逐步学习环境管理和包管理的相关命令。

51,397

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧