Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Mastering Threads, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:02:48
    Mastering Threads
  • Урок 2. 00:04:31
    Hearty Welcome
  • Урок 3. 00:01:09
    Basics of Threads
  • Урок 4. 00:01:29
    Why Use Threads?
  • Урок 5. 00:03:07
    Threading Models
  • Урок 6. 00:02:14
    Parallel Computing
  • Урок 7. 00:01:54
    Concurrent Computing
  • Урок 8. 00:02:18
    Java Memory Model (JSR 133)
  • Урок 9. 00:01:45
    Creating New Thread
  • Урок 10. 00:00:55
    New Thread with Runnable
  • Урок 11. 00:03:15
    ThreadGroups
  • Урок 12. 00:02:04
    What Can We Do With ThreadGroups?
  • Урок 13. 00:04:46
    Shared Memory with Multithreading
  • Урок 14. 00:09:49
    Synchronized
  • Урок 15. 00:03:36
    Thread States
  • Урок 16. 00:05:23
    Inter-thread communication
  • Урок 17. 00:00:54
    Priorities
  • Урок 18. 00:00:53
    java.util.Timer
  • Урок 19. 00:00:33
    Daemon Threads
  • Урок 20. 00:02:38
    Exercise 2.1
  • Урок 21. 00:10:17
    Exercise 2.1 Walkthrough
  • Урок 22. 00:00:33
    Exercise 2.2
  • Урок 23. 00:02:02
    Exercise 2.2 Walkthrough
  • Урок 24. 00:01:26
    The Secrets of Concurrency
  • Урок 25. 00:08:19
    Sabotaged Doorbell
  • Урок 26. 00:09:16
    Distracted Spearfisherman
  • Урок 27. 00:09:08
    Overstocked Haberdashery
  • Урок 28. 00:04:15
    Blind Spot
  • Урок 29. 00:04:52
    Leaked Memo
  • Урок 30. 00:01:56
    Corrupt Politician
  • Урок 31. 00:03:04
    Micromanager
  • Урок 32. 00:04:49
    Cretan Driving
  • Урок 33. 00:03:22
    Sudden Riches
  • Урок 34. 00:03:49
    Uneaten Lutefisk
  • Урок 35. 00:00:58
    Exercise 3.1
  • Урок 36. 00:02:17
    Exercise 3.1 Walkthrough
  • Урок 37. 00:00:34
    Exercise 3.2
  • Урок 38. 00:07:02
    Exercise 3.2 Walkthrough
  • Урок 39. 00:00:25
    Exercise 3.3
  • Урок 40. 00:01:21
    Exercise 3.3 Walkthrough
  • Урок 41. 00:00:23
    Applied Threading Techniques
  • Урок 42. 00:00:58
    Executors
  • Урок 43. 00:02:12
    ExecutorService
  • Урок 44. 00:01:04
    Callable and Future
  • Урок 45. 00:05:09
    Executor Example
  • Урок 46. 00:02:12
    CompletionService
  • Урок 47. 00:01:48
    CountDownLatch
  • Урок 48. 00:01:50
    Semaphore
  • Урок 49. 00:01:03
    BlockingQueues
  • Урок 50. 00:00:52
    ArrayBlockingQueue
  • Урок 51. 00:00:40
    LinkedBlockingQueue
  • Урок 52. 00:00:42
    PriorityBlockingQueue
  • Урок 53. 00:00:11
    DelayQueue
  • Урок 54. 00:00:28
    SynchronousQueue
  • Урок 55. 00:01:31
    Unhandled Exceptions
  • Урок 56. 00:01:36
    ThreadLocal
  • Урок 57. 00:01:42
    Stopping Threads
  • Урок 58. 00:02:06
    Shutdown Hooks
  • Урок 59. 00:00:25
    Exercise 4.1
  • Урок 60. 00:03:04
    Exercise 4.1 Walkthrough
  • Урок 61. 00:00:11
    Exercise 4.2
  • Урок 62. 00:01:55
    Exercise 4.2 Walkthrough
  • Урок 63. 00:01:23
    Exercise 4.3
  • Урок 64. 00:01:15
    Exercise 4.3 Walkthrough
  • Урок 65. 00:01:03
    Exercise 4.4
  • Урок 66. 00:04:51
    Exercise 4.4 Walkthrough
  • Урок 67. 00:00:31
    Threading Problems
  • Урок 68. 00:02:34
    Race Condition
  • Урок 69. 00:01:38
    Demo of Simple Race Condition
  • Урок 70. 00:03:10
    Repairing Race Condition with synchronized
  • Урок 71. 00:03:21
    Repairing Race Condition with Atomics
  • Урок 72. 00:01:01
    Repairing Race Condition with LongAdder
  • Урок 73. 00:01:14
    Repairing Race Condition with Local Confinement and Merge
  • Урок 74. 00:01:10
    Fixed with LongAdder
  • Урок 75. 00:01:25
    Lazy Initialization Race Conditions
  • Урок 76. 00:00:39
    How to Detect Race Conditions
  • Урок 77. 00:01:04
    Starvation
  • Урок 78. 00:00:58
    ReadWriteLock Starvation
  • Урок 79. 00:00:36
    Detecting Thread Starvation
  • Урок 80. 00:02:56
    Starvation in Thread Dumps
  • Урок 81. 00:02:09
    Fairness
  • Урок 82. 00:04:01
    SynchronousQueue Fairness
  • Урок 83. 00:01:15
    Deadlock
  • Урок 84. 00:01:01
    HappyLocker Example
  • Урок 85. 00:00:44
    How Can We Find Deadlocks?
  • Урок 86. 00:00:34
    Analyzing Thread Dumps
  • Урок 87. 00:00:17
    Livelock
  • Урок 88. 00:02:04
    Livelock with wait() and Self-Interrupt
  • Урок 89. 00:00:26
    Exercise 5.1
  • Урок 90. 00:10:38
    Exercise 5.1 Walkthrough
  • Урок 91. 00:00:55
    Exercise 5.2
  • Урок 92. 00:10:21
    Exercise 5.2 Walkthrough
  • Урок 93. 00:02:13
    Conclusion