Этот материал находится в платной подписке. Оформи премиум подписку и смотри или слушай Concurrency, Multithreading and Parallel Computing in Java, а также все другие курсы, прямо сейчас!
Премиум
  • Урок 1. 00:01:37
    Introduction
  • Урок 2. 00:06:13
    Processes and threads introduction
  • Урок 3. 00:02:42
    What is time-slicing algorithm?
  • Урок 4. 00:02:21
    Benefits of multithreading
  • Урок 5. 00:02:47
    Downside of multithreading
  • Урок 6. 00:02:45
    Thread life cycle in Java
  • Урок 7. 00:04:23
    Sequential processing
  • Урок 8. 00:06:29
    Starting threads - Runnable
  • Урок 9. 00:05:28
    Starting threads - Thread class
  • Урок 10. 00:04:39
    Wait for threads to finish - join
  • Урок 11. 00:08:59
    Daemon threads and user threads
  • Урок 12. 00:03:39
    Memory management of threads
  • Урок 13. 00:07:38
    Synchronization
  • Урок 14. 00:09:44
    Problems with synchronization
  • Урок 15. 00:03:21
    Locking with custom objects
  • Урок 16. 00:08:39
    Wait and notify
  • Урок 17. 00:11:10
    Producer and consumer
  • Урок 18. 00:06:15
    Locks
  • Урок 19. 00:06:24
    Producer consumer with locks
  • Урок 20. 00:01:35
    Locks and synchronization
  • Урок 21. 00:06:04
    Volatile
  • Урок 22. 00:01:19
    Stopping a thread
  • Урок 23. 00:04:38
    Deadlock and livelock
  • Урок 24. 00:06:21
    Deadlock example
  • Урок 25. 00:06:25
    Livelock example
  • Урок 26. 00:05:56
    Atomic variables
  • Урок 27. 00:03:52
    What are semaphores?
  • Урок 28. 00:05:29
    Mutexes and semaphores
  • Урок 29. 00:07:20
    Semaphores example
  • Урок 30. 00:04:49
    Why to use thread pools?
  • Урок 31. 00:05:22
    Executors example - SingleThreadExecutor
  • Урок 32. 00:04:12
    Executors example - FixedThreadPools
  • Урок 33. 00:03:25
    Executors example - ScheduledExecutor
  • Урок 34. 00:04:56
    Stopping executors
  • Урок 35. 00:03:25
    What is a Callable interface and Future object?
  • Урок 36. 00:07:41
    Callable and future example
  • Урок 37. 00:09:07
    Latch
  • Урок 38. 00:09:17
    Cyclic barrier
  • Урок 39. 00:08:53
    Blocking queue
  • Урок 40. 00:09:10
    Delay queue
  • Урок 41. 00:10:30
    Priority queue
  • Урок 42. 00:07:26
    Concurrent maps
  • Урок 43. 00:09:33
    Exchanger
  • Урок 44. 00:02:31
    Dining philosophers problem I - the problem
  • Урок 45. 00:03:56
    Dining philosophers problems II - constants
  • Урок 46. 00:08:04
    Dining philosophers problems III - chopstick
  • Урок 47. 00:11:06
    Dining philosophers problems IV - philosopher
  • Урок 48. 00:10:21
    Dining philosophers problems V - starting the threads
  • Урок 49. 00:03:30
    Dining philosophers problems VI - running the simulation
  • Урок 50. 00:01:25
    Student library simulation I - the problem
  • Урок 51. 00:01:51
    Student library simulation II - constants
  • Урок 52. 00:03:17
    Student library simulation III - book
  • Урок 53. 00:02:58
    Student library simulation VI - student
  • Урок 54. 00:02:41
    Locking: locks () and tryLock()
  • Урок 55. 00:04:13
    Student library simulation V - running the simulation
  • Урок 56. 00:01:44
    Miner game implementation I
  • Урок 57. 00:03:56
    Miner game implementation II
  • Урок 58. 00:02:16
    Miner game implementation III
  • Урок 59. 00:03:36
    Miner game implementation IV
  • Урок 60. 00:05:57
    Miner game implementation V
  • Урок 61. 00:08:07
    Parallel methods versus multithreading
  • Урок 62. 00:06:51
    Merge sort introduction I
  • Урок 63. 00:08:55
    Merge sort introduction II
  • Урок 64. 00:06:27
    Sequential merge sort I
  • Урок 65. 00:06:48
    Parallel merge sort
  • Урок 66. 00:04:46
    Comparing sorting implementations
  • Урок 67. 00:02:45
    Sum problem introduction
  • Урок 68. 00:04:29
    Sum problem - sequential approach
  • Урок 69. 00:08:27
    Sum problem - parallel implementation
  • Урок 70. 00:03:59
    Comparing sum implementations
  • Урок 71. 00:05:45
    Fork-join framework introduction
  • Урок 72. 00:09:15
    Fork-join framework simple example - RecursiveAction
  • Урок 73. 00:07:57
    Fork-join framework simple example - RecursiveTask<T>
  • Урок 74. 00:08:18
    Maximum finding - the algorithm
  • Урок 75. 00:06:55
    Maximum finding - running the application
  • Урок 76. 00:08:32
    Fork-join merge sort I
  • Урок 77. 00:05:01
    Fork-join merge sort II
  • Урок 78. 00:02:46
    What is the Stream API?
  • Урок 79. 00:08:55
    Streams with numbers
  • Урок 80. 00:03:44
    Streams with strings
  • Урок 81. 00:04:53
    Processing files with streams
  • Урок 82. 00:09:41
    Streams with custom objects
  • Урок 83. 00:07:59
    Serial and parallel streams - counting prime numbers
  • Урок 84. 00:06:02
    MapReduce introduction - basics
  • Урок 85. 00:06:08
    MapReduce introduction - example
  • Урок 86. 00:01:49
    MapReduce and Fork-Join