Last time I talked about the lock-free stack and queue, I was more concerned about proving that my code was free from the ABA problem than anything else. In making my argument I naturally glossed over such niceties as the .NET memory model and so assumed (pretty much) a sequential memory model, because, to be honest, that's how we think as programmers. […]
READ MOREGetting on for 4 years ago, I wrote a series of posts on lock-free containers in .NET, like the lock-free stack and the lock-free queue. They were fun to write, mainly because of the difficulty of the topic and trying to rationalize why early versions didn't work, and so on so forth. Along the way I learned about the .NET memory model, volatile
, memory fences, and other arcana, but in the end I had something that worked and worked well. Over the years since then I've had many emails from readers about lock-free containers and I've been happy to have been linked from many different places, so much so that currently I'm number 1 for "lock free stack" and queue on Google. […]
I admit it, I am a helpless geek: I love collecting old calculators and computing devices. My wife thinks I'm bananas, and she may be right, but there's just something about holding something from the dawn of calculating electronics. […]
READ MORENed Batchelder is a tech blogger I like to read, although he tends to deal with languages and situations I don't. Nevertheless he comes up with some great insights that have applicability to what I do and some great topics that extend what I know. […]
READ MOREAs detailed over on my work blog, I installed IE8 RC1 this morning. Because my home page in IE7 was this blog (it is in all my browsers), it was the first thing to come up in IE8. And IE8 immediately flipped into compatibility mode and displayed the page as if it was IE7. To put it mildly, this was both weird and aggravating, since the whole site validates both as XHTML 1.0 transitional and as CSS 2.1. There should have been no problem. […]
READ MOREAfter a while of using my archive calendar, the statistics for page views were starting to get really skewed in favor of the archive "post". It finally got to the point where the graph that's displayed under the Reporting tab in the Graffiti control panel had a line for archive that was 5 times longer than the nearest "real" post. Since the information about the number of people using the archive system is not that interesting to me, it was time to do something about it. […]
READ MOREIt's been a day. Or, rather, Day: it deserves to be capitalized. […]
READ MOREFile this under the, duh, why didn't I think of that category. Scott Cate has written a neat little widget/Chalk extension for Graffiti CMS that tracks 404s on your website. […]
READ MOREI set myself a task: write some raw JavaScript for a web page. By raw, I mean no jQuery, no Prototype, no MooTools, just me and the editor. […]
READ MOREWell that didn't take too long. Just enough time to open up an account at CodePlex, start a new project, point TortoiseSVN at it, and upload. The biggest time sink was actually the readme file and deciding on the license (I went for the MIT license). […]
READ MORE