相关推荐
-
天津之行
1.世纪钟广场 2.解放桥3.南市食品街(1)(2) 4.风情水畔5.古文化街6.名流茶馆 7.玉皇阁、解放广场8.天津之眼9.意式风景区 10.五大道
-
如何将RT-Thread移植到织女星开发板?
上个学期天津大学的吕卫老师,在他《微处理器系统》课程的实验环节上,让研究生们使用织女星开发板做了一些项目。本文是其中一份工作,由国际工程师学院,电子与通信工程的徐扬扬和张千依同学共同完成...
-
GitHub 上受欢迎的 Android UI Library 整理一
https://github.com/mikepenz/MaterialDrawer ★7337 - 安卓抽屉效果实现方案 https://github.com/Yalantis/Side-Menu.Android ★3865 - 创意边侧菜单 https://github.com/mxn21/FlowingDrawer ★1744 - 向右滑动...
-
GitHub上受欢迎的Android UI Library-项目开发实战篇:带各类框架链接地址详细解说及使用方法
这是我列举的下列所有框架github地址:...抽屉菜单类的框架 MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 -创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动抽屉效果 SlidingRo...
-
GitHub上受欢迎的Android UI Library
★32 - 类似于苹果的虚拟辅助按钮 Hamburger-Button ★31 - 完全定制的汉堡按钮 BadgeRadioButton ★25 - 仿QQ底部Tab切换RadioButton OrderButton ★21 - 仿饿了么下单按钮 点赞按钮 ...
-
最全的Android开源项目集合(转)你想实现的我都有!
个人补充: ... 抽屉菜单 ...MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动抽屉效果 SlidingRootNav ★1338 - 仿D...
-
GitHub上优秀Android UI Library
抽屉菜单MaterialDrawer&...★7337 - 安卓抽屉效果实现方案Side-Menu.Android ★3865 - 创意边侧菜单FlowingDrawer ★1744 - 向右滑动流动抽屉效果SlidingRootNav ★1338 - 仿DrawerLayo...
-
iOS开源项目、三方插件等收集
可以简单展示在UINavigationBar下方,类似Music app的播放列表视图,弹出菜单视图 比如筛选、模糊、优化、蒙版、调整大小、旋转以及保存等等。同时还提供了一个UIImageView子类从URL异步加载图片,并在...
-
Android 各类优秀依赖库 等各位砖友来搬
MaterialDrawer ★7337 - 安卓抽屉效果实现方案 Side-Menu.Android ★3865 - 创意边侧菜单 FlowingDrawer ★1744 - 向右滑动流动抽屉效果 SlidingRootNav ★1338 - 仿DrawerLayout的ViewGroup FantasySlide ★...
-
基于springboot大学生就业信息管理系统源码数据库文档.zip
基于springboot大学生就业信息管理系统源码数据库文档.zip
-
基于java的驾校收支管理可视化平台的开题报告.docx
基于java的驾校收支管理可视化平台的开题报告
-
原木5秒数据20241120.7z
时间序列 原木 间隔5秒钟 20241120
-
毕业设计&课设_基于 Vue 的电影在线预订与管理系统:后台 Java(SSM)代码,为毕业设计项目.zip
毕业设计&课设_基于 Vue 的电影在线预订与管理系统:后台 Java(SSM)代码,为毕业设计项目.zip
-
基于springboot课件通中小学教学课件共享平台源码数据库文档.zip
基于springboot课件通中小学教学课件共享平台源码数据库文档.zip
-
基于java的网上购物商城的开题报告.docx
基于java的网上购物商城的开题报告
-
delphi 12 控件之Delphi人脸检测与识别Demo1fdef-main.zip
Delphi人脸检测与识别Demo1fdef-main.zip
-
基于java的咖啡在线销售系统的开题报告.docx
基于java的咖啡在线销售系统的开题报告
-
基于java的自助医疗服务系统的开题报告.docx
基于java的自助医疗服务系统的开题报告.docx
-
Visual Basic编程入门与高级应用详解
内容概要:本文档全面介绍了Visual Basic(VB)编程语言的基础知识和高级应用。首先概述了VB的基本特性和开发环境,随后详细讲述了VB的数据类型、变量、运算符、控制结构、数组、过程与函数、变量作用域等内容。接着介绍了窗体设计、控件使用、菜单与工具栏的设计,文件操作、数据库访问等关键知识点。最后讨论了VB的学习方法、发展历史及其在桌面应用、Web应用、数据库应用、游戏开发和自动化脚本编写等领域的广泛应用前景。 适合人群:初学者和中级程序员,尤其是希望快速掌握Windows桌面应用开发的人群。 使用场景及目标:①掌握VB的基础语法和开发环境;②学会使用VB创建复杂的用户界面和功能完整的应用程序;③理解数据库操作、文件管理和网络编程等高级主题。 其他说明:Visual Basic是一种简单易学且功能强大的编程语言,尤其适合用于开发Windows桌面应用。文中不仅覆盖了基础知识,还包括了大量的实用案例和技术细节,帮助读者快速提升编程技能。
-
基于java的疫情期间高校防控系统开题报告.docx
基于java的疫情期间高校防控系统开题报告.docx
12 楼 luoyu-ds 2013-05-14 09:35
碰撞不是尺寸问题吧,应该是key的hash算出相同的值导致吧
楼主的意思是,如果本身链表长度只有两个,那么意味着在该链表内通过hash算法算出的链表只有两个值,无论你传什么key,得到的值也只在这两个之内,所以如果存入10个,碰撞几率肯定大很多啊
11 楼 jiewo 2013-05-13 15:13
10 楼 runfriends 2013-05-13 10:44
死循环是并发的put remove时因rehash引起的,如果只有并发get就不会出现
其实要想使用HashMap实现并发也是可以的,不一定非要使用ConcurrentHashMap,有些时候ConcurrentHashMap数据结构过于复杂,而多数时候不必使用这么复杂的。
要想在并发环境下使用HashMap而又不引起死循环,就只能在写操作时用写锁锁定,在读操作时用读锁锁定。这样就不会出现死循环。
可能有人会说这样效率太低,但是在有些情况下,可能需要同步的不只是map的方法,而是要同步若干行代码。这种情况下就没必要使用ConcurrentHashMap了,因为在map操作前后还有逻辑需要同步。
这么理解不对。。。如果只是写的时候加锁,还会有线程可见性的问题
9 楼 schweigen 2013-05-12 23:51
8 楼 3GQQ2012 2013-05-12 21:43
死循环是并发的put remove时因rehash引起的,如果只有并发get就不会出现
其实要想使用HashMap实现并发也是可以的,不一定非要使用ConcurrentHashMap,有些时候ConcurrentHashMap数据结构过于复杂,而多数时候不必使用这么复杂的。
要想在并发环境下使用HashMap而又不引起死循环,就只能在写操作时用写锁锁定,在读操作时用读锁锁定。这样就不会出现死循环。
可能有人会说这样效率太低,但是在有些情况下,可能需要同步的不只是map的方法,而是要同步若干行代码。这种情况下就没必要使用ConcurrentHashMap了,因为在map操作前后还有逻辑需要同步。
这么理解不对。。。如果只是写的时候加锁,还会有线程可见性的问题
7 楼 wei_qiu 2013-05-12 01:08
6 楼 ankonlcy 2013-05-11 17:33
楼主明显标注thread1在此处挂起:
下面执行时就该是下面的代码:
那么在执行楼主所说的第二步:“2)线程一被调度回来执行。”时,循环就已经出现了,而不是像楼主所说的那样还需要在多执行一次调用才出现循环。
5 楼 jiecooly 2013-05-10 15:11
碰撞不是尺寸问题吧,应该是key的hash算出相同的值导致吧
这里只是为了便于理解而已, 但楼主可以说得更详细点。不至于给新人带来误解。分析很透彻,好文章
4 楼 zsw12013 2013-05-10 14:30
3 楼 smallbee 2013-05-10 14:07
碰撞不是尺寸问题吧,应该是key的hash算出相同的值导致吧
2 楼 runfriends 2013-05-10 12:24
死循环是并发的put remove时因rehash引起的,如果只有并发get就不会出现
其实要想使用HashMap实现并发也是可以的,不一定非要使用ConcurrentHashMap,有些时候ConcurrentHashMap数据结构过于复杂,而多数时候不必使用这么复杂的。
要想在并发环境下使用HashMap而又不引起死循环,就只能在写操作时用写锁锁定,在读操作时用读锁锁定。这样就不会出现死循环。
可能有人会说这样效率太低,但是在有些情况下,可能需要同步的不只是map的方法,而是要同步若干行代码。这种情况下就没必要使用ConcurrentHashMap了,因为在map操作前后还有逻辑需要同步。
1 楼 laonao 2013-05-10 10:39