一.简介编写正确的并发程序是一件困难的事情,往往调试过程中发生很多不确定的事情,这时需要对理论知识的一个认知,能够准确的追踪问题。二.硬件背景CPU,内存,I/O设备不断迭代,这三者速度存在差异,CPU和内存的速度差异可以形象的描述:CPU速度最快,内存次之,I/O设备更次之。为了合理利用CPU的高性能,平衡这三者的速度差异,计算机体系结构、操作系统、编译程序都做出了贡献,主要体现为:CPU增加缓存,以均衡与内存速度差异;操作系统增加了进程、线程,以分时复用CPU,进而均衡CPU与I/O设备的
原创 2021-08-31 09:13:07
119阅读
一.简介编写正确的并发程序是一件困难的事情,往往调试过程中发生很多不确定的事情,这时需要对理论知识的一个认知,能够准确的追踪问题。二.硬件背
原创 2022-01-23 17:31:45
52阅读
书接上文:Java并发BUG基础篇内存一致性问题当多个线程访问为相同数据的结果不一致时,将发生内存一致性问题。根据Java内存模型,除主内存(RAM)外,每个CPU都有自己的缓存。因此,任何线程都可以
原创 2022-01-14 17:56:32
94阅读
使用线程安全对象共享对象线程主要通过共享对相同对象的访问进行通信。因此,在对象变化时读取可能会产生意外的结果。同样,同时更改对象可能会使它处于不一致的状态。避免此类并发问题编写可靠代码的主要方法是使用
原创 2022-01-15 09:06:26
103阅读
在使用Java做性能测试的过程中,遇到过很多自己抗自己的坎儿。在经历过风风雨雨之后,自认为已经是个并发编程的老司机,没想到前两天又丢进了同一个坑中。 保持操作的原子性!!! 保持操作的原子性!!! 保持操作的原子性!!! 重要的事情写三遍。 事情是这样,要写一个脚本,需求是对所有的用户进行初始化(包含HTTP请求),为了加速,自然选择了并发实现。(隐藏需求:每个用户都需要初始化,但可以重复初始化)
原创 2023-08-07 20:54:13
249阅读
书接上文:Java并发BUG基础篇内存一致性问题当多个线程访问为相同数据的结果不一致时,将发生内存一致性问题
原创 2021-12-10 17:51:25
135阅读
使用线程安全对象共享对象线程主要通过共享对相同对象的访问进行通信。因此,在对象变化时读取可能会产生意外的结果
原创 2021-12-10 17:52:02
133阅读
警告: linker command failed with exit code 1 (use -v to see invocation)PROJECT --> B
ios
原创 2023-03-02 08:53:12
121阅读
软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交:$ git statusOn branch devChang...
原创 2021-05-20 10:54:23
54阅读
软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中
原创 2022-03-15 14:19:44
98阅读
/**==** 2. 随机排序中的newid()问题 **==**/--测试数据declare @t table(name char(1),value all select 'c',5unio...
转载 2007-12-17 10:41:00
64阅读
2评论
并发操作并发操作——并发、并行并发操作——并发、并行并发操作前言一、什么是并发?什么是并行?并发:并行:二、并发和并行举例总
  一、什么是双边距Bug? 先来看图: 我们要让绿色盒模型在蓝色盒模型之内向左浮动,并且距蓝色盒模型左侧100像素。 这个例子很常见,比如在网页布局中,侧边栏靠左侧内容栏浮动,并且要留出内容栏的宽度。要实现这样的效果,我们给绿色盒模型应用以下CSS属性: .floatbox {  float: left;&nbs
转载 2011-04-28 09:46:32
287阅读
声明:以下内容只有当你登录到一个username同时,学生不能申请多次登录。 说是BUG,事实上这也不是一个BUG
转载 2015-09-15 11:02:00
28阅读
2评论
/**==** 1. 自定义函数用于group by时出错 **==**/--一个简单的函数create function f_str(@str sysname,@
转载 2007-12-17 10:41:00
53阅读
2评论
 一、什么是双边距Bug? 先来看图: 我们要让绿色盒模型在蓝色盒模型之内向左浮动,并且距蓝色盒模型左侧100像素。 这个例子很常见,比如在网页布局中,侧边栏靠左侧内容栏浮动,并且要留出内容栏的宽度。要实现这样的效果,我们给绿色盒模型应用以下CSS属性: .floatbox {  float: left;  width:&nbs
转载 2011-04-28 09:40:44
1561阅读
      问题是这样的,ConcurrentLinkedQueue在JDK7中remove方法会发生内存溢出,写代码去验证我这里就省略了JDK7    如下List-1是JDK7中的源码    List-1public boolean remove(Object o) {     if (o == null) return false;     Nodepred = null;     for 
JDK
转载 2020-12-13 23:40:00
544阅读
2评论
  BUG是每个软件都会出现的问题,但有的BUG对软件的运行影响不大,有的BUG可能会导致软件无法正常运行。 这时候就需要把这些bug记录下来,提交给别人修改。 一般来说,其中包含哪些错误? 让我们来看看。  1、bug的标题和描述:  标题主要是对你提交的bug的简洁描述;  bug的详细描述是对bug的进一步详细描述,比如在什么情况下等等; 标题也可以直接作为描述部分(可以简明扼要)。  这两
原创 2022-02-25 11:04:49
998阅读
* Bug Bash,顾名思义就是缺陷大扫荡,是软件测试的一个很重要的实践,是对日常测试的
原创 2023-02-17 09:21:20
200阅读
业务背景         在内存中,对mq消息进行分类计数。问题描述         生产环境,运行一段时间后,发现消息队列有大量堆积。如果把计数逻辑注释掉,只接收用户访问消息而不进行处理,则mq队列无堆积。mq栈dump信息如下:Cons
原创 2016-09-19 15:43:10
2437阅读
  • 1
  • 2
  • 3
  • 4
  • 5