Erfasste Variable in einer Schleife in C #

Ich habe ein interessantes Problem mit C # getroffen. Ich habe Code wie unten. List<Func<int>> actions = new List<Func<int>>(); int variable = 0; while (variable < 5) { actions.Add(() => variable * 2); ++ variable; } foreach (var act in actions) {