Zmienne volatile

0

W klasie są dwa pola:

private volatile static int ile1 = 0;
private static int ile2 = 0;

W pętli wykonywane są wielokrotnie przypisania:

ile1 = i >> 1;
ile1 = i/2;
ile2 = i >> 1;
ile2 = i/2;

Operacje ze zmienną volatile są wolniejsze. Ale dlaczego dla operacji dzielenia program jest wolniejszy o 30%, a dla przesuwania jest wolniejszy siedmiokrotnie?
http://ideone.com/qJQiZ7

0

Ja nie pytałem dlaczego volatile jest wolniejsze. Pytam dlaczego przy operacji dzielenia przez 2 spowolnienie jest niewielkie, a przy przesunięciu bitowym jest ogromne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1