Pintos的官方文档很明显假设这个OS是运行在单cpu上,从sema_up等函数是通过禁止中断来保证原子性和解决竞争问题中也能看到这点。 因为在多cpu上是不能通过禁止中断来解决同步问题,多个线程在多个cpu上仍有可能在临界区改变同一个共享变量。 通过禁止中断是可以解决所有竞争问题,但是可能会带来 ...
分类:
其他好文 时间:
2017-06-14 14:32:52
阅读次数:
296
问题说明80端口被占用,用netstat -nlp |grep :80命令看看有什么进程占用了80端口,发现是httpd进程。 没想到安装了两个apache,我安装apache2.4的时候删除了2.2的apache啊, 可能是安装php memcache扩展的时候莫名其妙的安装了上了。 总之要卸载它 ...
分类:
其他好文 时间:
2017-06-14 14:21:51
阅读次数:
117
参考官网https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/ 一、安装 1、配置yum管理包 1)、在路径/etc/yum.repos.d/下创建文件mongodb-org-3.4.repo cd /etc/yum. ...
分类:
数据库 时间:
2017-06-14 13:07:11
阅读次数:
287
一、ThreadLocal 使用wait/notify方式实现的线程安全,性能将受到很大影响。解决方案是用空间换时间,不用锁也能实现线程安全。 来看一个小例子,在线程内的set、get就是threadLocal package thread2; public class ConnThreadLoca ...
分类:
编程语言 时间:
2017-06-14 11:41:15
阅读次数:
176
一、在任务并行库中,如果对任务运行Wait、WaitAny、WaitAll等方法,或者求Result属性,都能捕获到AggregateException异常。 可以将AggregateException异常看做是任务并行库编程中最上层的异常。 在任务中捕获的异常,最终都应该包装到AggregateE ...
1)DB_COMMIT : DB层的COMMIT,很少用到,大S之前说过,忘了 2)BAPI_TRANSACTION_COMMIT:COMMIT WORK/ AND WAIT包装的,后面接收COMMIT的返回消息 3)COMMIT WORK/AND WAIT:普通的提交,一般有数据库修改和更新都需要 ...
分类:
其他好文 时间:
2017-06-13 21:45:27
阅读次数:
140
在mysql innodb中使用事务,如果插入或者更新出错,一定要主动显式地执行rollback,否则可能产生不必要的锁而锁住其他的操作 我们在使用数据库的时候,可以使用contextlib,这样异常的时候自动回滚,而且最后都会执行关闭操作 http://www.liaoxuefeng.com/wi ...
分类:
数据库 时间:
2017-06-13 12:44:28
阅读次数:
517
waitpid() 与 wait() 功能相似,都是用户主进程等待子进程结束或中断. 可用于进程之间的同步 wait 函数原型 pid_t wait(int *status); 函数说明 wait() 会临时停止眼下进程的运行,直到有信号来到或子进程结束.假设在调用wait() 时子进程已经结束,则 ...
分类:
系统相关 时间:
2017-06-13 10:00:19
阅读次数:
291
sleep()和wait()的区别 sleep是线程类的方法,它会让出cpu去执行其他线程,当指定时间过后,会从新回到此线程上,但是虽然让出了CPU ,并不会释放对象锁, wait是object的方法,它会让出同步锁,等待其他线程调用notify()方法后,才进入对象锁的争夺中。 get load的 ...
分类:
编程语言 时间:
2017-06-12 19:47:50
阅读次数:
178