←Older revision | Revision as of 08:50, 7 September 2009 | ||
Line 1: | Line 1: | ||
- | Synchronization is getting more and more important in applications and libraries written these days. However synchronization is hard. The primitives available in [[Java]] (or other languages), are ... well, are primitive. Higher level abstractions are available, but still they don't guarantee completely deadlock prone system. This has all been discussed in [[Chapter 11]], Runtime Aspects of [[API]]s. | + | [[Synchronized|Synchronization]] is getting more and more important in applications and libraries written these days. However synchronization is hard. The primitives available in [[Java]] (or other languages), are ... well, are primitive. Higher level abstractions are available, but still they don't guarantee completely deadlock prone system. This has all been discussed in [[Chapter 11]], Runtime Aspects of [[API]]s. |
[[Java Monitor]]s just aren't what they supposed to be (read [[Java Monitor|why]]). Thus I am glad to see that the project [http://projectlombok.org/features/Synchronized.html Lombok's @Synchronized] seems to successfully replace the '''synchronized''' keyword with [[annotation]] (vivat [[TheYearOfAnnotations2009|annotations]]!). | [[Java Monitor]]s just aren't what they supposed to be (read [[Java Monitor|why]]). Thus I am glad to see that the project [http://projectlombok.org/features/Synchronized.html Lombok's @Synchronized] seems to successfully replace the '''synchronized''' keyword with [[annotation]] (vivat [[TheYearOfAnnotations2009|annotations]]!). |