DoubleBuffer implementation to save one array copy