Sunday, May 1, 2011

Notes from "The Programming Leap to Multithreading"

I gave a (techinical) keynote at the ICIS conference in Shanghai a year or two ago. It was a fun talk and I was recently asked for the notes so I thought I'd post them.

When I was at Google I spent some of my 20% time simply surfing through the Java code base looking for race conditions. It was a lot of fun and often I was patching code that was stuff that hadn't been changed in forever or was completely out of my normal stomping grounds.

After submitting the code changes with the comment 'Fix a race condition', I can remember at least one code reviewer responding, "Approved. Cool. But, what race condition?"

This talk covers a bunch of the common cases I encountered.

LeapToMultithreading.pdf

1 comment:

A Reader said...

There often is a best synchronization solution, but IT'S not often worth finding it.
page 37