我现在封装一个数据结构,是否要提供2个类?

funnyone 2013-10-29 03:10:26
一个用于单线程,一个用于多线程。
就像jdk 中stringbuilder,StringBuffer 一样?

你们如何做的?
...全文
1663 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
致知Fighting 2013-10-29
  • 打赏
  • 举报
回复
引用 2 楼 funnyone 的回复:
[quote=引用 1 楼 huxiweng 的回复:] 你觉得有必要线程安全就直接写成安全的。不安全的提供了也没什么意义
咋会没意义,如果只是单线程操作,没有必要加锁浪费效率? 你们如何做的?[/quote] 如果你的并发真的已经大到要考虑因为一个锁而引起性能下降的问题,你再来考虑要不要提供一套普通实现一套并发实现,否则就是浪费时间。 在绝大部分情况下,你就算加个锁,也不会怎么影响性能,有瓶颈的话,也会优先去优化数据库或者类似序列化效率等等问题
zhuweisyyc 2013-10-29
  • 打赏
  • 举报
回复
碰到了或者预见到了加上线程安全,一般的接口没必要都加上线程安全。
teemai 2013-10-29
  • 打赏
  • 举报
回复
引用 2 楼 funnyone 的回复:
[quote=引用 1 楼 huxiweng 的回复:] 你觉得有必要线程安全就直接写成安全的。不安全的提供了也没什么意义
咋会没意义,如果只是单线程操作,没有必要加锁浪费效率? 你们如何做的?[/quote] 那就效仿JDK的吧,都给实现一套号了。全一点。
funnyone 2013-10-29
  • 打赏
  • 举报
回复
引用 1 楼 huxiweng 的回复:
你觉得有必要线程安全就直接写成安全的。不安全的提供了也没什么意义
咋会没意义,如果只是单线程操作,没有必要加锁浪费效率? 你们如何做的?
teemai 2013-10-29
  • 打赏
  • 举报
回复
你觉得有必要线程安全就直接写成安全的。不安全的提供了也没什么意义

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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