- 博客(64)
- 收藏
- 关注
原创 关于数组和指针的一些理解
int a = 3;int * b = &a;cout<<"b = "<<b<<endl;coutb 是指向int类型a的一个指针。第一行输出打印出b指向数据的地址。第二行输出打印第一行输出的地址再加上4个字节。原因是:指针的加减操作,例如加一,则会在原来指向的数据地址基础上,加上所指数据所占的字节数,在例子中,所指的数据指的是int 类型,占4个字节,所以在原基础上增加4个字节。
2016-08-13 16:43:58
544
2
原创 Grunt个人学习
Grunt是一款受欢迎的Javascript代码自动化构建工具。提供自动化的代码检测,编译,压缩等自动化构建功能。首先需要安装Grunt-CLI,安装完成之后就可以使用grunt命令了。执行grunt命令式,会根据Gruntfile.js中配置的require()找到安装的grunt(因此配置不同路径可以找到不同版本的grunt),加载grunt并传入Gruntfile.js里的配置信
2016-07-21 11:27:04
427
转载 C++中虚函数工作原理和(虚)继承类的内存占用大小计算
原文链接:http://blog.youkuaiyun.com/hackbuteer1/article/details/7883531一、虚函数的工作原理 虚函数的实现要求对象携带额外的信息,这些信息用于在运行时确定该对象应该调用哪一个虚函数。典型情况下,这一信息具有一种被称为 vptr(virtual table pointer,虚函数表指针)的指针的形式。vptr 指向一个被称为
2016-03-11 20:59:11
457
转载 高性能Mysql主从架构的复制原理及配置详解
原文链接:http://blog.youkuaiyun.com/hguisu/article/details/7325124 温习《高性能MySQL》的复制篇.1 复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础。将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其它主机(slaves)上,并重新执
2016-03-11 20:03:08
499
转载 数据库锁和数据库隔离级别
原文链接:http://qiangmzsx.blog.51cto.com/2052549/1402125最近突然发现忘了数据库锁和数据库隔离级别,时常弄混它们之间的关系。为此特此写下此博客,以方便自己复习,同时也可以帮助博友。数据库锁 数据库锁就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁。加锁后事务T就对该数据对象有了一定
2016-03-11 19:39:22
390
转载 TCP如何保证可靠性?
原文链接:http://blog.sina.com.cn/s/blog_63ec18bc01016gcv.html 在TCP的连接中,数据流必须以正确的顺序送达对方。TCP的可靠性是通过顺序编号和确认(ACK)来实现的。TCP在开始传送一个段时,为准备重传而首先将该段插入到发送队列之中,同时启动时钟。其后,如果收到了接受端对该段的ACK信息,就将该段从队列中删去。如果在时钟规定的时间内
2016-03-11 10:31:24
496
转载 HashMap和ConcurrentHashMap分享
原文链接:http://qicen.iteye.com/blog/1913168大家一看到这两个类就能想到HashMap不是线程安全的,ConcurrentHashMap是线程安全的。除了这些,还知道什么呢? 先看一下简单的类图: 从类图中可以看出来在存储结构中ConcurrentHashMap比HashMap多出了一个类Segment,而Segment是一个可重入锁。
2016-03-11 10:19:00
372
转载 MySQL 四种事务隔离级的说明
原文链接:http://www.cnblogs.com/zhoujinyi/p/3437475.html很早之前写的文章,重新回顾和学习下:按照SQL:1992 事务隔离级别,InnoDB默认是可重复读的(REPEATABLE READ)。MySQL/InnoDB 提供SQL标准所描述的所有四个事务隔离级别。你可以在命令行用--transaction-isolation
2016-03-10 11:52:05
351
转载 MySQL各存储引擎特点及选择建议
原文链接:http://395469372.blog.51cto.com/1150982/1726147Mysql官方存储引擎比较常见的存储引擎有:Innodb、MyISAM、Memory、Archive、NDB、BDB,第三方比较有名的:TokuDB、Infobright、InnfiniDB、XtraDB(Innodb增强版本) 官方存储引擎的特点对比
2016-03-10 11:18:51
1010
转载 Java HashMap工作原理及实现
原文链接:http://yikun.github.io/2015/04/01/Java-HashMap%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86%E5%8F%8A%E5%AE%9E%E7%8E%B0/1. 概述从本文你可以学习到:什么时候会使用HashMap?他有什么特点?你知道HashMap的工作原理吗?你知道
2016-03-10 11:03:16
410
转载 理解Java对象序列化
原文链接:http://www.blogjava.net/jiangshachina/archive/2012/02/13/369898.html关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结。此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制。在撰写本文时,既参考了Thinking in Java, Effec
2016-03-09 21:01:05
277
转载 linux中fork()函数详解(原创!!实例讲解)
原文链接:http://blog.youkuaiyun.com/jason314/article/details/5640969 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程
2016-03-09 20:48:12
320
转载 socket阻塞与非阻塞,同步与异步、I/O模型
原文链接:http://blog.youkuaiyun.com/hguisu/article/details/7453390socket阻塞与非阻塞,同步与异步作者:huangguisu1. 概念理解 在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock
2016-03-06 19:37:19
344
原创 线程间通信与进程间通信
Linux进程间通信:管道、信号、消息队列、共享内存、信号量、套接字(socket)Linux线程间通信:互斥量(mutex),信号量,条件变量Windows进程间通信:管道、消息队列、共享内存、信号量 (semaphore) 、套接字(socket)Windows线程间通信:互斥量(mutex),信号量(semaphore)、临界区(critical sectio
2016-03-06 08:35:14
423
转载 C/C++ 内存分配方式,堆区,栈区,new/delete/malloc/free
原文链接:http://blog.sciencenet.cn/blog-268057-366795.html内存分配方式内存分配方式有三种:[1] 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量, static 变量。[2] 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执
2016-03-05 22:34:45
3457
转载 大数据量高并发访问的数据库优化方法(一)
原文链接:http://blog.sina.com.cn/s/blog_8fb83eec0101cpg7.html一、数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能。所以,在一个系统开始实施之前,完备的数据库模型的设计是必须的。 在一个系统分析、设计阶段,因为数据量
2016-03-05 20:24:12
2274
转载 Java 深拷贝和浅拷贝
原文链接:http://www.cnblogs.com/mengdd/archive/2013/02/20/2917971.html深拷贝(deep clone)与浅拷贝(shallow clone) 浅拷贝(浅复制、浅克隆):被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。 换言之,浅拷贝仅仅复制所考虑的对象
2016-03-05 14:58:47
276
转载 Java 多线程(七) 线程间的通信——wait及notify方法
原文链接:http://www.cnblogs.com/mengdd/archive/2013/02/20/2917956.html线程间的相互作用 线程间的相互作用:线程之间需要一些协调通信,来共同完成一件任务。 Object类中相关的方法有两个notify方法和三个wait方法: http://docs.oracle.com/javase/
2016-03-05 14:24:19
335
转载 Java 多线程(六) synchronized关键字详解
原文链接http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。 同步机制可以使用synchronized关键字实现。 当synchronized关键字修饰一个方法的时候,
2016-03-05 14:12:17
309
转载 Java 多线程(三) 线程的生命周期及优先级
原文链接:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913649.html线程的生命周期 线程的生命周期:一个线程从创建到消亡的过程。 如下图,表示线程生命周期中的各个状态: 线程的生命周期可以分为四个状态:1.创建状态: 当用new操作
2016-03-05 13:52:05
412
转载 JAVA启动参数整理
原文链接:http://blog.youkuaiyun.com/turkeyzhou/article/details/7619472java启动参数共分为三类;其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容;其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现都满足,且不保证向后兼容;其三是非Stable参数(-XX),此
2016-03-05 10:16:21
325
转载 cookie 和session 的区别详解
原文链接:http://www.cnblogs.com/shiyangxt/articles/1305506.html这些都是基础知识,不过有必要做深入了解。先简单介绍一下。二者的定义:当你在浏览网站的时候,WEB 服务器会先送一小小资料放在你的计算机上,Cookie 会帮你在网站上所打的文字或是一些选择,都纪录下来。当下次你再光临同一个网站,WEB 服
2016-03-03 19:35:42
275
转载 深入研究java.lang.ThreadLocal类
原文链接 http://lavasoft.blog.51cto.com/62575/51926/一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadL
2016-03-03 19:09:27
329
转载 malloc/free和new/delete的区别
原文地址:http://blog.youkuaiyun.com/chance_wang/article/details/1609081malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自
2016-03-01 21:37:26
312
转载 C/C++ 中的0长数组(柔性数组)
原文链接:http://blog.youkuaiyun.com/yby4769250/article/details/7294696在标准C和C++中0长数组如charArray[0]是不允许使用的,因为这从语义逻辑上看,是完全没有意义的。但是,GUN中却允许使用,而且,很多时候,应用在了变长结构体中,如:StructPacket{Int state;
2016-03-01 21:05:02
363
转载 内存对齐的规则以及作用
原文地址:http://www.cppblog.com/snailcong/archive/2009/03/16/76705.html首先由一个程序引入话题: 1 //环境:vc6 + windows sp2 2 //程序1 3 #include 4 5 using namespace std; 6 7 struct st1 8 {
2016-02-29 21:53:01
207
原创 关于一个关系型数据库的实现原理参考
文章参考链接:https://www.reddit.com/r/Database/comments/27u6dy/how_do_you_build_a_database/ciggal8 http://www.ruanyifeng.com/blog/2014/07/database_implementation.html
2016-02-26 16:52:39
431
转载 从关系型数据库到非关系型数据库
原文地址:http://blog.youkuaiyun.com/robinjwong/article/details/185021951. 关系型数据库关系型数据库,是指采用了关系模型来组织数据的数据库。关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成为主流数据库结构的主流模型。简单来
2016-02-26 16:16:29
389
转载 vim 的使用方法
原文地址:http://blog.youkuaiyun.com/shiwei408/article/details/7296462Vim几句话介绍 Vim是Unix系统上的文本编辑软件(你该不会不知道什么是文本编辑软件吧!),在windows上也有移植的版本,方便了Windows上的用户。Vim的文本编辑功能非常强大,强大的有些让人吃惊!并且非常稳定,你的文档不用经常存盘,它
2016-02-22 16:02:09
507
原创 Ubuntu14.04无线上网不稳定,掉线之后无法重连上网解决。
寒假打算更多地接触Linux,所以打算在Ubuntu14.04下学习Redis。 在跟着Redis官网学习的时候,突然网页就加载不出来。看右上角网络连接并没有断开,于是立马看看连着同一wifi的手机能否刷新。结果发现wifi并没有问题。于是我断开重连,发现根本连不上。然后我用手机开热点,笔记本也连不上。然后换回windows系统,可以正常上网。可以想到,应该是Ub
2016-02-05 14:25:49
3658
转载 软件设计模式之(二)装饰者模式
转载自 : http://blog.youkuaiyun.com/chenyujing1234 例子代码:(编译工具:Eclipse)http://www.rayfile.com/zh-cn/files/1291b5bd-9418-11e1-b6a1-0015c55db73d/参考书籍: > 装饰者模式(Decorator ['dekəreitə] Pattren),是在不改变原类
2016-01-14 19:00:43
1002
转载 设计模式原则详解
我们在应用程序开发中,一般要求尽量两做到可维护性和可复用性。 应用程序的复用可以提高应用程序的开发效率和质量,节约开发成本,恰当的复用还可以改善系统的可维护性。而在面向对象的设计里面,可维护性复用都是以面向对象设计原则为基础的,这些设计原则首先都是复用的原则,遵循这些设计原则可以有效地提高系统的复用性,同时提高系统的可维护性。 面向对象设计原则和设计模式也是对系统进行合理重构的指导
2016-01-10 14:57:16
290
转载 Java ConcurrentModificationException异常原因和解决方法
原文地址:http://www.cnblogs.com/dolphin0520/p/3933551.html一.ConcurrentModificationException异常出现的原因 先看下面这段代码:123456789101112
2016-01-01 16:23:50
345
转载 错误消息: 为了配置 TCP/IP,必须安装并启用的网络适配器
原文地址:http://blog.youkuaiyun.com/kongxx/article/details/44065201在修改本地连接属性时弹出窗口显示错误 “为了配置 TCP/IP,必须安装并启用的网络适配器”微软官方给的解决方案(见下面链接)在我的机器上使用无效http://support.microsoft.com/kb/308939/zh-cn最后解决
2016-01-01 14:46:30
868
原创 开发PLO编译器过程的一些体会
学了c++有一段时间了,一直没有适合的项目练手,刚好最近编译原理课程设计要求做一个pl0编译器,于是决定选择c++来编写。一路上可叫一个坎坷啊,要么是逻辑错误,要么是语言特性方面不熟悉而导致编译不通过,或者程序出错。可以说,三分之一的开发时间都在测试c++的用法= = 。不过还好坚持下来也做完了,其中各种数据结构,各种用,如堆栈,list,map,二维数组,vector等,让我熟悉了一下这些常
2015-12-15 12:40:08
912
转载 【C++11】新特性——引入nullprt
原文链接 : http://blog.youkuaiyun.com/huang_xw/article/details/87643461. 引入nullptr的原因引入nullptr的原因,这个要从NULL说起。对于C和C++程序员来说,一定不会对NULL感到陌生。但是C和C++中的NULL却不等价。NULL表示指针不指向任何对象,但是问题在于,NULL不是关键字,而只是一个宏定义(ma
2015-11-23 15:53:46
467
原创 Linux 线程锁,条件变量 信号量的区别
很好的几篇关于条件变量,信号量,线程锁的博文,由于博主不允许转载,顾附上链接:http://blog.youkuaiyun.com/sunnyboy_cia/article/details/6278640http://blog.youkuaiyun.com/sunnyboy_cia/article/details/6278673http://blog.youkuaiyun.com/sunn
2015-11-21 10:43:02
623
转载 理解互斥量和信号量
互斥量(Mutex) 互斥量表现互斥现象的数据结构,也被当作二元信号灯。一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源。 Mutex本质上说就是一把锁,提供对资源的独占访问,所以Mutex主要的作用是用于互斥。Mutex对象的值,只有0和1两个值。这两个值也分别代表了Mutex的两
2015-11-21 10:31:17
378
转载 线程同步:条件变量的使用细节分析
原文地址:线程同步:条件变量的使用细节分析 作者:ifndef如同互斥量和读写锁一样,条件变量也需要初始化和回收#includeint pthread_cond_init(pthread_cond_t *restrict cond,pthread_condattr_t *restrict attr);int pthread_cond_destroy(pthrea
2015-11-20 16:33:17
316
转载 [C/C++]函数参数的入栈顺序与可变参数的实现
#includevoid foo(int x, int y, int z){ printf("x = %d at [%X]\n", x, &x); printf("y = %d at [%X]\n", y, &y); printf("z = %d at [%X]\n", z, &z);}int main(int argc, ch
2015-10-11 13:55:39
579
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人