698 double x = (double) vh.get(array, i); |
698 double x = (double) vh.get(array, i); |
699 assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value"); |
699 assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value"); |
700 } |
700 } |
701 |
701 |
702 { |
702 { |
703 boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2); |
703 boolean success = false; |
704 assertEquals(r, true, "weakCompareAndSet double"); |
704 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
705 success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2); |
|
706 } |
|
707 assertEquals(success, true, "weakCompareAndSet double"); |
705 double x = (double) vh.get(array, i); |
708 double x = (double) vh.get(array, i); |
706 assertEquals(x, VALUE_2, "weakCompareAndSet double value"); |
709 assertEquals(x, VALUE_2, "weakCompareAndSet double value"); |
707 } |
710 } |
708 |
711 |
709 { |
712 { |
710 boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1); |
713 boolean success = false; |
711 assertEquals(r, true, "weakCompareAndSetAcquire double"); |
714 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
715 success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1); |
|
716 } |
|
717 assertEquals(success, true, "weakCompareAndSetAcquire double"); |
712 double x = (double) vh.get(array, i); |
718 double x = (double) vh.get(array, i); |
713 assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double"); |
719 assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double"); |
714 } |
720 } |
715 |
721 |
716 { |
722 { |
717 boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2); |
723 boolean success = false; |
718 assertEquals(r, true, "weakCompareAndSetRelease double"); |
724 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
725 success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2); |
|
726 } |
|
727 assertEquals(success, true, "weakCompareAndSetRelease double"); |
719 double x = (double) vh.get(array, i); |
728 double x = (double) vh.get(array, i); |
720 assertEquals(x, VALUE_2, "weakCompareAndSetRelease double"); |
729 assertEquals(x, VALUE_2, "weakCompareAndSetRelease double"); |
721 } |
730 } |
722 |
731 |
723 { |
732 { |
838 double x = (double) vh.get(array, i); |
847 double x = (double) vh.get(array, i); |
839 assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value"); |
848 assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value"); |
840 } |
849 } |
841 |
850 |
842 { |
851 { |
843 boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2); |
852 boolean success = false; |
844 assertEquals(r, true, "weakCompareAndSet double"); |
853 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
854 success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2); |
|
855 } |
|
856 assertEquals(success, true, "weakCompareAndSet double"); |
845 double x = (double) vh.get(array, i); |
857 double x = (double) vh.get(array, i); |
846 assertEquals(x, VALUE_2, "weakCompareAndSet double value"); |
858 assertEquals(x, VALUE_2, "weakCompareAndSet double value"); |
847 } |
859 } |
848 |
860 |
849 { |
861 { |
850 boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1); |
862 boolean success = false; |
851 assertEquals(r, true, "weakCompareAndSetAcquire double"); |
863 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
864 success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1); |
|
865 } |
|
866 assertEquals(success, true, "weakCompareAndSetAcquire double"); |
852 double x = (double) vh.get(array, i); |
867 double x = (double) vh.get(array, i); |
853 assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double"); |
868 assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double"); |
854 } |
869 } |
855 |
870 |
856 { |
871 { |
857 boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2); |
872 boolean success = false; |
858 assertEquals(r, true, "weakCompareAndSetRelease double"); |
873 for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) { |
|
874 success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2); |
|
875 } |
|
876 assertEquals(success, true, "weakCompareAndSetRelease double"); |
859 double x = (double) vh.get(array, i); |
877 double x = (double) vh.get(array, i); |
860 assertEquals(x, VALUE_2, "weakCompareAndSetRelease double"); |
878 assertEquals(x, VALUE_2, "weakCompareAndSetRelease double"); |
861 } |
879 } |
862 |
880 |
863 { |
881 { |