Chinaunix首页 | 论坛 | 博客
  • 博客访问: 477618
  • 博文数量: 63
  • 博客积分: 1485
  • 博客等级: 上尉
  • 技术积分: 596
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-21 14:49
文章分类

全部博文(63)

文章存档

2018年(8)

2017年(25)

2016年(10)

2012年(6)

2010年(14)

我的朋友

分类: Java

2017-06-14 08:50:45

项目里需要进行数据的统计/罗列,最终还要把信息转成JSON,简化后的JSON格式如下:
{
  "Counts": 2,
  "guest": [
    {
      "name": "guest01",
      "statistics_01": 4,
      "statistics_02": 6,
      "actionCounts": 1,
      "actionList": [
        {
          "info_01": "...",
          "info_02": "..."
        }
      ]
    }
    {
      "name": "guest02",
      ...
    }
  ]
}

也就是说,这个数据结构里面有列表。查了一下,发现arraylist转JSON很方便,抄了一个例子过来。不错,简单的操作都是OK的。

但是系统是多线程的,也就是说,上面那个数据结构是要被多线程操作的(追加阿,删除阿,更新阿),因此synchronize是必须的。

又查了查,"vector"本身就是线程安全的,而"arraylist"不是线程安全的。可是,"vector"转JSON的例子没找到,又不想"vector"转"arraylist"再转JSON。。。

只好用synchronize了。

这篇文章对synchronize讲的不错:
         java中synchronized关键字的用法

阅读(1631) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~