由于在c++中我们可以动态分配内存,但有时候我们会忘记用 delete或free释放内存,就会导致内存泄露。所以c++11提供了智能指针这种东西 本文参考了知乎某知乎友的 https://www.zhihu.com/people/mo-shan-zhe/activities 比如下面这两种情况 可能 ...
分类:
编程语言 时间:
2019-10-16 19:44:18
阅读次数:
99
.NET和c#: .NET是一个框架,一般称.net Framework。 c#是一个.NET框架下的编程语言。 缩写: 程序集: CIL(Common Intermediate Language,公共中间语言):程序集里的执行代码。其他术语:IL(Intermediate Language)和MS ...
分类:
Web程序 时间:
2019-10-16 13:20:05
阅读次数:
105
错误原因:由于之前安装时候电脑中同时存在固态硬盘和机械硬盘,再装系统时候由于将D盘的存储释放,导致 解决办法:重装了windows系统,在计算机磁盘管理中建立压缩卷D盘,然后再安装Ubuntu系统即可 ...
分类:
系统相关 时间:
2019-10-16 09:25:27
阅读次数:
104
互斥锁 互斥锁的特性: 1. 原子性:当有一个线程成功拿到了这个锁,其他线程都无法在相同的时间拿到这个锁 2. 唯一性:在一个线程拿到锁的这段时间,只有当这个线程把锁释放掉,其他的线程才有可能拿到 3. 非繁忙等待性:如果一个线程已经锁定了一个互斥量,第二个线程又视图去拿到这个锁的前线,则第二个锁将 ...
分类:
其他好文 时间:
2019-10-15 21:21:06
阅读次数:
124
一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)—一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆 ...
分类:
其他好文 时间:
2019-10-15 21:19:39
阅读次数:
87
重入锁 重入锁,顾名思义,就是支持重进入的锁,它表示该锁能够支持一个线程对资源的重复加锁。重进入是指任意线程在获取到锁之后能够再次获取该锁而不会被锁阻塞,该特性的实现需要解决以下两个问题。 1、线程再次获取锁。锁需要去识别获取锁的线程是否为当前占据锁的线程,如果是,则再次成功获取。 2、锁的最终释放 ...
分类:
编程语言 时间:
2019-10-15 19:27:16
阅读次数:
89
Lock Lock提供了与synchronized类似的同步功能,只是在显式的获取和释放锁,因此有了锁获取和释放的可操作性、可中断的获取锁以及超时获取锁等多种同步特性。 代码实例: 特性 尝试非阻塞地获取锁:当前线程尝试获取锁,如果这一时刻锁没有被其它线程获取到,则成功获取并持有锁; 能被中断地获取 ...
分类:
编程语言 时间:
2019-10-15 19:24:47
阅读次数:
118
相关文章: C#的三大难点之前传:什么时候应该使用C#??C#的三大难点之一:byte与char,string与StringBuilderC#的三大难点之二:托管与非托管C#的三大难点之三:消息与事件 托管代码与非托管代码 众所周知,我们正常编程所用的高级语言,是无法被计算机识别的。需要先将高级语言 ...
临时表 临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间。 当你使用 SHOW TABLES命令显示数据表列表时,你将无法看到 SalesSummary表。 创建临时表 CREATE TEMPORARY TABLE SalesSummary ( product_name V ...
分类:
其他好文 时间:
2019-10-15 09:20:34
阅读次数:
72
本篇文章将通过一条SQL的执行过程来介绍MySQL的基础架构。首先有一个user_info表,表里有一个id字段,执行下面这条查询语句:select*fromuser_infowhereid=1;返回结果为:+----+----------+----------+--------+------+---------------------+---------------------+|id|user
分类:
数据库 时间:
2019-10-14 10:38:49
阅读次数:
88