1. Урок 1. 00:03:46
    1.1 Welcome to Heinz's Happy Hour Webinars
  2. Урок 2. 00:07:18
    1.2 5 Minute Guide to IntelliJ IDEA
  3. Урок 3. 00:03:18
    1.3 ConcurrentHashMap
  4. Урок 4. 00:11:10
    1.4 computeIfAbsent() Recursive Update
  5. Урок 5. 00:14:57
    1.5 Replacing computeIfAbsent() with putIfAbsent()
  6. Урок 6. 00:12:24
    1.6 Thread Contention in computeIfAbsent()
  7. Урок 7. 00:03:41
    1.7 Letting Threads Start Work at the Same Time
  8. Урок 8. 00:01:21
    1.8 Using volatile boolean to Start Threads Together
  9. Урок 9. 00:02:22
    1.9 Thanks and Until Next Time
  10. Урок 10. 00:01:33
    2.1 Welcome to Spliterator Deep Dive
  11. Урок 11. 00:04:53
    2.2 Characteristics.ORDERED
  12. Урок 12. 00:02:41
    2.3 Characteristics.DISTINCT
  13. Урок 13. 00:01:24
    2.4 Characteristics.SORTED
  14. Урок 14. 00:04:17
    2.5 Characteristics.SIZED
  15. Урок 15. 00:08:51
    2.6 Characteristics.SUBSIZED
  16. Урок 16. 00:03:04
    2.7 Characteristics.NONNULL
  17. Урок 17. 00:07:17
    2.8 Characteristics of IdentityHashMap
  18. Урок 18. 00:03:41
    2.9 Characteristics.IMMUTABLE
  19. Урок 19. 00:01:06
    2.10 Characteristics.CONCURRENT
  20. Урок 20. 00:00:17
    2.11 Summary of Characteristics
  21. Урок 21. 00:00:58
    2.12 Implementing Spliterator Interface
  22. Урок 22. 00:02:30
    2.13 Our Own BasicArraySpliterator
  23. Урок 23. 00:01:59
    2.14 estimateSize()
  24. Урок 24. 00:03:46
    2.15 tryAdvance()
  25. Урок 25. 00:19:33
    2.16 trySplit()
  26. Урок 26. 00:09:42
    2.17 characteristics()
  27. Урок 27. 00:04:45
    2.18 forEachRemaining()
  28. Урок 28. 00:00:56
    2.19 getComparator()
  29. Урок 29. 00:06:59
    2.20 Performance of Splitting
  30. Урок 30. 00:07:10
    2.21 Questions
  31. Урок 31. 00:02:11
    3.1 Welcome to ManagedBlocker Talk
  32. Урок 32. 00:04:52
    3.2 Fibonacci Algorithms
  33. Урок 33. 00:04:48
    3.3 Dijkstra's Sum of Squares - Demo 1
  34. Урок 34. 00:03:38
    3.4 Parallelize Our Algorithm - Demo 2
  35. Урок 35. 00:10:26
    3.5 Parallelize BigInteger - Demo 3
  36. Урок 36. 00:08:31
    3.6 Cache Results - Demo 4
  37. Урок 37. 00:09:15
    3.7 Reserved Caching Scheme - Demo 5
  38. Урок 38. 00:10:41
    3.8 ManagedBlocker - Demo 6
  39. Урок 39. 00:08:01
    3.9 Questions
  40. Урок 40. 00:00:25
    4.1 Welcome
  41. Урок 41. 00:04:32
    4.2 Observer Design Pattern
  42. Урок 42. 00:02:27
    4.3 java.util.Observer
  43. Урок 43. 00:05:22
    4.4 Generifying Observer
  44. Урок 44. 00:03:57
    4.5 Mutually Recursive Generics
  45. Урок 45. 00:12:20
    4.6 Linking Our Generified Observer to the WatchService
  46. Урок 46. 00:07:57
    4.7 Testing our DirectoryChangeWatcher
  47. Урок 47. 00:12:23
    4.8 Creating a ReactiveTableModel Watching a Directory
  48. Урок 48. 00:03:38
    4.9 Creating a GUI to View Directory Changes
  49. Урок 49. 00:07:14
    4.10 Fixing the Race Condition in our Table Model
  50. Урок 50. 00:01:21
    4.11 Why No One Uses java.util.Observer
  51. Урок 51. 00:02:34
    4.12 Observer Livelocks
  52. Урок 52. 00:05:10
    5.1 Welcome and Friendly Banter
  53. Урок 53. 00:01:55
    5.2 G1 GC Dynamic Log Viewer
  54. Урок 54. 00:06:12
    5.3 Default Methods in Java and Synchronized
  55. Урок 55. 00:00:30
    5.4 Memory Mapped File Performance
  56. Урок 56. 00:02:37
    5.5 forEach() Performance in Java 8
  57. Урок 57. 00:02:21
    5.6 Explanation Why Interface Methods Cannot be Synchronized
  58. Урок 58. 00:12:07
    5.7 Java 9 Private Interface Methods
  59. Урок 59. 00:05:36
    5.8 Discussions About Optional in Java 8 and 9
  60. Урок 60. 00:11:15
    5.9 Lambda Pitfalls
  61. Урок 61. 00:01:48
    5.10 Exceptions in Streams : Lambdas
  62. Урок 62. 00:05:07
    5.11 Compact in Java 8 JavaDocs
  63. Урок 63. 00:01:35
    6.1 Friendly Banter
  64. Урок 64. 00:11:41
    6.2 java.util.Arrays in Java 9
  65. Урок 65. 00:04:49
    6.3 Enumeration to Iterator
  66. Урок 66. 00:00:28
    6.4 Observable Replaced by Flow
  67. Урок 67. 00:12:52
    6.5 Immutable Collections Java 9
  68. Урок 68. 00:05:33
    6.6 Objects.* New Methods in Java 9
  69. Урок 69. 00:00:28
    6.7 Optional in Java 9
  70. Урок 70. 00:01:16
    6.8 Scanner in Java 9
  71. Урок 71. 00:09:13
    6.9 Why You Should Migrate To Java 9
  72. Урок 72. 00:13:01
    6.10 Question Time
  73. Урок 73. 00:09:18
    7.1 Conference Speaking
  74. Урок 74. 00:01:55
    7.2 Intrinsics
  75. Урок 75. 00:03:19
    7.3 Review of Immutable Lists in Java 9
  76. Урок 76. 00:02:24
    7.4 Memory Hogs By Reynolds
  77. Урок 77. 00:05:37
    7.5 String deduplication
  78. Урок 78. 00:04:28
    7.6 Compact Strings in Java 9
  79. Урок 79. 00:17:31
    7.7 StringSquasher
  80. Урок 80. 00:10:02
    7.8 Questions
  81. Урок 81. 00:03:32
    7.9 JCrete 2017
  82. Урок 82. 00:01:15
    8.1 Welcome to our Advanced G1GC Tuning Session with Kirk Pepperdine
  83. Урок 83. 00:03:09
    8.2 Oracle's G1 Propaganda
  84. Урок 84. 00:02:10
    8.3 How Region Size is Calculated
  85. Урок 85. 00:03:30
    8.4 How Regions Are Allocated to Generations
  86. Урок 86. 00:01:26
    8.5 Visualizing Layout of the G1GC Heap
  87. Урок 87. 00:01:31
    8.6 Young Collection
  88. Урок 88. 00:01:47
    8.7 Old Collection - Concurrent Mark
  89. Урок 89. 00:02:52
    8.8 Time to Safe Point (TTSP)
  90. Урок 90. 00:00:55
    8.9 Collection Set
  91. Урок 91. 00:02:33
    8.10 Mark and Calculate Liveliness With G1MixedGCLiveThresholdPercent
  92. Урок 92. 00:01:07
    8.11 Eligible Regions for Mixed Collections
  93. Урок 93. 00:06:32
    8.12 Humongous Allocations
  94. Урок 94. 00:03:03
    8.13 Allocators vs Collectors
  95. Урок 95. 00:01:09
    8.14 RSet Refinement Threads
  96. Урок 96. 00:01:32
    8.15 How To Get a GC Log
  97. Урок 97. 00:06:48
    8.16 Analysis of GC Log Using jClarity's Censum Tool
  98. Урок 98. 00:04:10
    8.17 Censum - Heap Graphs
  99. Урок 99. 00:03:23
    8.18 Censum - Memory Pool Sizing
  100. Урок 100. 00:02:28
    8.19 Censum - Allocation Rates
  101. Урок 101. 00:01:14
    8.20 Censum - Pause Times
  102. Урок 102. 00:03:38
    8.21 Censum - G1 Phases
  103. Урок 103. 00:00:44
    8.22 Censum - Tenuring Distribution Summary
  104. Урок 104. 00:04:53
    8.23 Tuning Recommendation Based on Censum Analysis
  105. Урок 105. 00:05:28
    8.24 Questions
  106. Урок 106. 00:06:52
    8.25 Question - Is G1 an alternative as from JDK 8 versus CMS?
  107. Урок 107. 00:00:41
    9.1 Welcome
  108. Урок 108. 00:03:37
    9.2 Project Jigsaw
  109. Урок 109. 01:11:51
    9.3 Working Safely in Java
  110. Урок 110. 00:01:12
    9.4 Evolution of Unsafe Usage - AtomicReferenceFieldUpdater
  111. Урок 111. 00:03:08
    9.5 Evolution of Unsafe Usage - Unsafe in ConcurrentLinkedQueue
  112. Урок 112. 00:02:26
    9.6 Introduction of VarHandle in Java 9
  113. Урок 113. 00:02:22
    9.7 Unsafe Usage in Java 7,8,9
  114. Урок 114. 00:02:12
    9.8 VarHandles Operations
  115. Урок 115. 00:06:21
    9.9 Striped64 Tutorial
  116. Урок 116. 00:03:24
    9.10 ThreadLocalRandom Evolution and Probe Field
  117. Урок 117. 00:01:09
    9.11 Accessing Thread Probe Field in Java 9
  118. Урок 118. 00:03:53
    9.12 Changing Strings With VarHandle
  119. Урок 119. 00:01:14
    9.13 Getting Rid of Warnings
  120. Урок 120. 00:10:16
    9.14 MappedByteBuffer
  121. Урок 121. 00:02:25
    9.15 JVisualVM Gone in Java 9
  122. Урок 122. 00:01:53
    9.16 Marking Fields @Contended in Java 9
  123. Урок 123. 00:03:19
    9.17 Java 9 Stream Changes
  124. Урок 124. 00:07:04
    9.18 jshell For Scripting
  125. Урок 125. 00:02:21
    9.19 Unix Style Scripting With jshell
  126. Урок 126. 00:01:02
    9.20 Garbage Collection Changes in Java 9
  127. Урок 127. 00:04:30
    9.21 Hacking BigInteger
  128. Урок 128. 00:04:04
    9.22 Questions
  129. Урок 129. 00:00:14
    10.1 Welcome
  130. Урок 130. 00:04:02
    10.2 New Cleaner in Java 9
  131. Урок 131. 00:04:44
    10.3 Finalizers in Java 9, reachabilityFence()
  132. Урок 132. 00:12:22
    10.4 Deprecations Going Forward
  133. Урок 133. 00:01:40
    10.5 Asynchronous Exceptions with Thread.stop()
  134. Урок 134. 00:01:58
    10.6 transferTo() and readAllBytes()
  135. Урок 135. 00:04:07
    10.7 Compiler Bug With Java StackOverFlow
  136. Урок 136. 00:00:47
    10.8 onSpinWait()
  137. Урок 137. 00:00:41
    10.9 Math.fma()
  138. Урок 138. 00:00:18
    10.10 System.Logger
  139. Урок 139. 00:04:34
    10.11 BigDecimal and BigInteger sqrt()
  140. Урок 140. 00:00:22
    10.12 ForkJoinPool New Constructor
  141. Урок 141. 00:02:54
    10.13 Desktop.moveToTrash()
  142. Урок 142. 00:02:16
    10.14 JAlba Unconference in Edinburgh, Scotland
  143. Урок 143. 00:01:55
    10.15 Questions
  144. Урок 144. 00:07:36
    11.1 Welcome and Chitter Chatter
  145. Урок 145. 00:07:43
    11.2 Refactoring Loops With Java 8 Streams
  146. Урок 146. 00:17:48
    11.3 Refactoring with stream(), map(), collect(), also Method References
  147. Урок 147. 00:18:55
    11.4 ModelReader.getEntityCache(), distinct(), String joining
  148. Урок 148. 00:16:40
    11.5 EntityGroupUtil.getModelEntityFromRecords(), anyMatch() (difficult)
  149. Урок 149. 00:05:04
    11.6 Comments and Questions
  150. Урок 150. 00:03:00
    12.0 Friendly Banter
  151. Урок 151. 00:02:41
    12.1 Welcome to The Inglorious History of the Common java.util.ArrayList
  152. Урок 152. 00:01:01
    12.2 Review of Java 1.2 ArrayList
  153. Урок 153. 00:03:48
    12.4 Serialization Deadlock Java 1.2 and 1.3
  154. Урок 154. 00:02:30
    12.3 Java 1.2 -> 1.3 - Negative ArrayList Size
  155. Урок 155. 00:05:36
    12.5 Stuart Marks Challenge
  156. Урок 156. 00:02:12
    12.6 Java 1.3 -> 1.4 Arithmetic Overflow in int calculation
  157. Урок 157. 00:05:19
    12.7 Java 1.3 -> 1.4 - RandomAccess, bulk operations and serialVersionUID
  158. Урок 158. 00:02:16
    12.8 Java 1.4 -> 1.5 - Generics
  159. Урок 159. 00:02:12
    12.9 Serialization - Why is elementData transient?
  160. Урок 160. 00:02:49
    12.10 Java 5 -> 6
  161. Урок 161. 00:06:08
    12.11 toArray() returning wrong type of array
  162. Урок 162. 00:00:39
    12.12 Arrays.copyOf()
  163. Урок 163. 00:03:12
    12.13 Java 6 -> 7 - No-Args Constructor lazily initializing array
  164. Урок 164. 00:01:12
    12.14 Java 7 Bulk Methods slightly improved
  165. Урок 165. 00:01:30
    12.15 Java 7 Serialization
  166. Урок 166. 00:00:32
    12.16 Java 7 -> 8
  167. Урок 167. 00:01:23
    12.17 Computational time complexity of removeIf()
  168. Урок 168. 00:02:26
    12.18 List.sort() with exceptions (2:25)
  169. Урок 169. 00:02:30
    12.19 Java 8 -> Java 9 - Martin Thompson style coding
  170. Урок 170. 00:00:55
    12.20 Thank you!