Advanced Topics in Programming Languages: The Java Memory...
Sign in to YouTube
Sign in to YouTube
Sign in to YouTube
Uploaded on Oct 8, 2007
Google Tech Talks
March 21, 2007
ABSTRACT
This talk describes the Java Memory Model and how it affects the ways concurrent software should be written. Recent changes to the memory model, which were incorporated into JDK 5, redefined the semantics of threads, synchronization, volatile variables, and final fields. The new memory model provides efficient and provably correct techniques for safely and correctly implementing concurrent operations. These techniques are compatible with existing good programming practice, although care needs to be taken in a couple of corner cases.
Most programmers can avoid depending on low-level details and instead just use the high-level concurrency abstractions...
-
Category
-
License
Standard YouTube License
Loading...
Loading...
Loading...
Loading...
Loading...
-
23:45
**** Interview with Google's "Cupcake Princess" *****by Revision3Featured
52,128
-
56:23
Tangible Functional Programmingby GoogleTechTalks
41,505 views
-
52:38
A JVM Does That?by GoogleTechTalks
43,675 views
-
1:55:05
Advanced Topics In Programming Languages: Closures For Javaby GoogleTechTalks
90,894 views
-
56:18
Java on Guice: Dependency Injection, the Java Wayby GoogleTechTalks
20,583 views
-
9
videos
Play all
javaby cantwaittowatch
-
1:13:53
Advanced Topics in Programming Languages: Java Puzzlers,...by GoogleTechTalks
201,636 views
-
57:23
Advanced Topics in Programming Languages: The Java Memory Modelby GoogleTalksArchive
9,763 views
-
56:31
Teaching Kids To Codeby GoogleTechTalks
72,099 views
-
14:34
OSCON Java 2011: Josh Bloch, "Java: The Good, Bad, and Ugly Parts"by OreillyMedia
20,811 views
-
28:42
Josh Bloch interviewed by Jeremy Allisonby googleOSPO
6,959 views
-
6:53
what is heap and stack java interview question and answerby InterviewDot Job
3,943 views
-
54:15
Google I/O 2011: Java Puzzlers - Scraping the Bottom of the Barrelby GoogleDevelopers
26,816 views
-
1:00:18
How To Design A Good API and Why it Mattersby GoogleTechTalks
173,675 views
-
1:02:55
The New NIO, aka JSR-203by GoogleTechTalks
17,497 views
-
59:26
The Go Programming Languageby GoogleTechTalks
301,770 views
-
1:03:47
JavaScript: The Good Partsby GoogleTechTalks
312,544 views
-
1:01:05
Developing iPhone Applications using Javaby GoogleTechTalks
216,687 views
-
56:36
So You Want To Be A Programming Rock Star?by GoogleTechTalks
55,661 views
-
1:05:27
Advanced Topics in Programming Languages Series: JSR 277...by GoogleTechTalks
10,787 views
-
1:12:01
Java on a 1000 Cores - Tales of Hardware / Software CoDesignby GoogleTechTalks
18,151 views
- Loading more suggestions...
All Comments (19)
nalllar 2 weeks ago
Yes, however in 1.4 final did not offer the same guarantees as it does now, so the default value of that field type (in this case 0) could be seen.
Sign in to YouTube
Sign in to YouTube
Tarun Gupta 8 months ago
Hi James,
One question regarding slide - Ordering(Why that slide was wrong)
There is a line that- Reentrant lock is no-op
Assuming that a JVM does nothing in no-op, but my understating is that(Correct me if I am wrong) it must be increasing lock counter some where, and this counter is checked to reach 0 while exiting the synchronize block/method to release the lock, if it does not reach zero,lock wont be released.
Thanks,
Tarun
Sign in to YouTube
Sign in to YouTube
MobileTeam Chennai 1 year ago
no synchronization is always a Bug????? I don't agree
Sign in to YouTube
Sign in to YouTube
lorrainegardella 1 year ago
Pretty useful!
Sign in to YouTube
Sign in to YouTube
getalifein 1 year ago
- At 47:00 , I could not get the "/tmp/usr" substring attack. Even Java 1.4 String was final. ??
Sign in to YouTube
Sign in to YouTube
ae6rt 1 year ago
interesting point about volatile increments at 38:50
Sign in to YouTube
Sign in to YouTube
neeraj2608 2 years ago
@32:00 is something that happened to me :D
Sign in to YouTube
Sign in to YouTube