摘要:
导致错误 LINK : fatal error LNK1561: entry point must be defined 的原因有很多种, 网上可以搜到很多,一般是函数入口没定义, 或者修改为/subsystem:windows /entry:mainCRTStartup,或者使用下面的语句:#pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"" )这里我碰到的情况比较特别, 我的是一个VC 6.0的静态lib工程(VC 2008上编译正常 阅读全文
摘要:
锁无关的(Lock-Free)数据结构在避免死锁的同时确保线程继续Andrei Alexandrescu刘未鹏 译Andrei Alexandrescu是华盛顿大学计算机科学系的在读研究生,也是《Modern C++ Design》一书的作者。他的邮箱是 andrei@metalanguage.com。在Generic沉默了一期之后(研究生的学业总是使人不得不投入百分之百的精力),这一期文章的可写内容突然多得令人似乎有点无所适从.例如,其中之一就是关于构造函数的讨论,特别是转发构造函数(forwarding constructor),(构造函数中的)异常处理,以及两段式(two-stage)对 阅读全文
摘要:
关于Hazard Pointers的话题, 起源于这个文章:实现无锁的栈与队列(4)http://www.cnblogs.com/catch/p/3176636.html其实他的系列文章(3)之前我也看过, 里面写的内容是有小问题的, 不过关键不在这, 我比较看中的是他引入的无锁队列问题. 其实之前也有过人发表过更完整的无锁哈希表的实现, 不过(4)文作者比较多的融入自己的想法(虽然不一定对), 还是有一定启发的. (4)中讨论的Hazard Pointers我比较感兴趣. 阅读全文