Multithreading for Beginners

  Рет қаралды 110,654

freeCodeCamp.org

freeCodeCamp.org

Күн бұрын

Пікірлер: 157
@sharipovsunnatillo2772
@sharipovsunnatillo2772 3 ай бұрын
This is the perfect video course so far. You won't find such a detailed course for free anywhere else.
@shandilyacodes
@shandilyacodes 2 ай бұрын
Thanks for watching, I am glad you found it useful. Happy Learning :)
@janedawg09
@janedawg09 6 ай бұрын
yes. one of the concepts that I want to learn and understand most. thank you for this
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@2ru2pacFan
@2ru2pacFan 6 ай бұрын
OMG! that's exactly what I needed right now! The timing is insane!
@mustafaghoneim5262
@mustafaghoneim5262 6 ай бұрын
saaaaaaaaaaameeeeeeeee, but in python
@2ru2pacFan
@2ru2pacFan 6 ай бұрын
@@mustafaghoneim5262 yes Python or Javascript!
@theresourceroom7961
@theresourceroom7961 6 ай бұрын
same!! i have been working on a OS, but i got stuck on multithreading.'
@howardchang7999
@howardchang7999 6 ай бұрын
same
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :)
@adrianstefan1814
@adrianstefan1814 6 ай бұрын
Congrats for such a great course! As a suggestion, it would was better to present Reentrant lock before BlockingQueue, because from what I've read, they internally make use of that.
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thanks for your feedback! Hope you find the overall content to be useful :)
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thank you FreeCodeCamp for taking this course live! I had so much fun making this course and I hope people would find this helpful :) Playlist version of this video available on my channel 😅 kzbin.info/aero/PLG-dyv583o8yTwh-hlvmmhpbHum2u9DKF
@kalaiarasanpa
@kalaiarasanpa 6 ай бұрын
me too, waiting for part 2
@shandilyacodes
@shandilyacodes 6 ай бұрын
@@kalaiarasanpa I am planning to cover topics such as Completable Future, parallel streams, Java 21 multithreading enhancements and new features and async programming using java. Do you have any other ideas except these, please let me know, I'll include those to the list! Thanks
@kalaiarasanpa
@kalaiarasanpa 6 ай бұрын
@@shandilyacodes great bro, but new feature in java of a series is good but it gives less interest to viewers. Why should you make a question and answer shorts about the topic that you upload on KZbin. That shorts make a wide audience to watch topic you upload. Its just a suggestion, thank you 😉.
@shandilyacodes
@shandilyacodes 6 ай бұрын
@@kalaiarasanpa Great suggestion, will keep this in mind. Thank you!
@ShortBursts-yt
@ShortBursts-yt Ай бұрын
Had so much fun learning this
@shandilyacodes
@shandilyacodes Ай бұрын
Glad you found it useful :) Happy learning!
@sandisosenzo
@sandisosenzo 6 ай бұрын
Finally, a worthy challenge 💪💪🔥😂. I'll take this in a few weeks ❤
@shandilyacodes
@shandilyacodes 6 ай бұрын
Haha! Glad to share the knowledge, thanks for watching! :) Happy learning.
@0Mim111
@0Mim111 4 ай бұрын
4:37:57 it should be worker two acquired lockB, if it was one, it would be unlocked right after
@voidcry9757
@voidcry9757 5 ай бұрын
This is great. Really needed this before my Java developer interview
@shandilyacodes
@shandilyacodes 5 ай бұрын
Glad you found it helpful :) Happy learning and all the best for your interview.
@SteelPROTOX
@SteelPROTOX 5 ай бұрын
thanks ramendu i needed this tutorial
@shandilyacodes
@shandilyacodes 5 ай бұрын
Thanks for your comment, I am so glad you found it helpful :)
@StefanHanrath
@StefanHanrath 6 ай бұрын
An important concept but also an enormous increase in state space for your program. It becomes exponentially less simple to debug and reason about your programs runtime state when you take imperative / most OO languages into multithreaded code
@shandilyacodes
@shandilyacodes 6 ай бұрын
That's right! Multithreading should be used cautiously only when there is a absolute need. But in the cases where it's needed, it's a really useful and powerful and can work wonders to the performance.
@StefanHanrath
@StefanHanrath 6 ай бұрын
with high traffic concurrent code its almost inevitable to refactor towards immutable data structures and message passing, at that point why not try out functional programming 😅
@dr.shreekantsingh3280
@dr.shreekantsingh3280 6 ай бұрын
Excellent! Marvelous!!👍👍👍👍
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thank you! Glad you liked it.
@mAth4u657
@mAth4u657 6 ай бұрын
Wow ,what a time to have this ❤❤
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@tarose71
@tarose71 6 ай бұрын
It seems to me the intention behind the naming of the join() method, is that a thread is asking to join its immediate parent that called it, in terms of process execution, and this is also likely related to the Set Theory & databases concept of a logical 'join' operation ... so for me, it is intuitive if you think about it in those contexts, which are useful so long as you understand this historical & related field referencing going on, because it means we can also quickly think to look up those concepts in related fields where the name of the function is telling us that this could be useful ... whereas, the naming you suggested, while more literal, is more cumbersome to type, and doesnt connect us to this other relevant information
@blackbeard3449
@blackbeard3449 6 ай бұрын
The join terminology comes from the fork-join model for multi threading. Basically a thread can be forked into multiple threads which can later join back to the original thread. Wikipedia has an article on it.
@tarose71
@tarose71 6 ай бұрын
@@blackbeard3449 which in turn comes from the things I said ... I was talking about the origin of the term from a far broader perspective which does relate to what you said, but also relates to many other concepts ... I wouldn't rely on Wikipedia, a lot of it's written by a younger generation more often than not who have NFI what came beforehand ... Wikipedia is only really useful for individual statistics like the land surface area of a continent or something of that nature which they'd struggle to get wrong, for everything else it's a bit shite
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thanks for sharing your perspective on the concept @tarose71. I do agree with you, it makes sense when thought in that particular context. What I meant was that the term doesn't sound very intuitive to me if I am starting newly with the multithreading. For example, when I see run() method I know for sure the or atleast have this mental assumption that this particular block would be executed in some way by some one, even before having learnt the concept about run() method in context of multithreading. Thanks for watching! :)
@quangduvu6610
@quangduvu6610 6 ай бұрын
Great material!! Learnt alot ^^ Thank you
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thanks for your comment and feedback. Glad to know that this helped you. Happy learning.
@cariyaputta
@cariyaputta 6 ай бұрын
Thanks. Amazing course. Added to my library.
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@ranjankumarsingh4601
@ranjankumarsingh4601 5 ай бұрын
Thank You for making this tutorial on Multithreading.
@shandilyacodes
@shandilyacodes 5 ай бұрын
Glad you liked it, thanks for watching. Happy learning :)
@sprigs953
@sprigs953 6 ай бұрын
Just the video I needed!
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to know that :) Happy learning!
@mhasnain5805
@mhasnain5805 6 ай бұрын
Thanks for this much needed video ❤
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@i8you
@i8you 6 ай бұрын
Amazing.. gonna watch today ❤
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@wannabeice
@wannabeice 6 ай бұрын
thank a lot for this great course!
@shandilyacodes
@shandilyacodes 5 ай бұрын
Glad you liked it, thanks for watching. Happy learning :)
@avi7474
@avi7474 5 ай бұрын
thanks for the content! Would love to learn about your journey into uber and more, as an aspiring swe myself.
@shandilyacodes
@shandilyacodes 5 ай бұрын
Thanks for you comment, I am glad you found it helpful :) I am planning to shoot one such video and upload on my channel in some weeks :)
@aruns3907
@aruns3907 6 ай бұрын
This is very stupendous
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thank you! Glad you are loving it. Consider subscribing my channel as well to support my content :)
@babu_g19
@babu_g19 6 ай бұрын
Thanks for the content🎉
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@aruns3907
@aruns3907 6 ай бұрын
I hope after the completion i will be able to solve the threading concepts well
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thanks for watching. I am positive you'd be able to write and understand 70% of Java multithreaded code. Rest of the advanced concepts I am planning to cover in a second part on this topic :) Happy Learning!
@bannourbouakkez7905
@bannourbouakkez7905 7 сағат бұрын
thank you very much , im gratefull
@anonymous5946
@anonymous5946 6 ай бұрын
Searching for multi threading Playlist and you drop this
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad you found it at the right time, happy learning :)
@DDPP-lm3sx
@DDPP-lm3sx 5 ай бұрын
Thanks for this course, any addition for Java 8+ concurrency changes like CompletableFutures etc?
@shandilyacodes
@shandilyacodes 5 ай бұрын
Glad you found it helpful :) Yes, I plan on covering concurrency feature additions in later part of the Java versions in an another video in upcoming months.
@amritkanoi8804
@amritkanoi8804 3 ай бұрын
​@@shandilyacodeswhen will you release this video with new update
@saifullahhabid1133
@saifullahhabid1133 6 ай бұрын
I'm about to write my exams thank you so much
@shandilyacodes
@shandilyacodes 6 ай бұрын
All the best for your exams and happy learning
@saifullahhabid1133
@saifullahhabid1133 6 ай бұрын
Thank you and so to you
@RoshiniAjoy
@RoshiniAjoy 4 ай бұрын
Thank you
@shandilyacodes
@shandilyacodes 4 ай бұрын
Glad you found this helpful :)
@nithinkrishna8464
@nithinkrishna8464 6 ай бұрын
Thank you soo much🤍
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@babu_g19
@babu_g19 6 ай бұрын
Yes we should have other naming convention for thread join() .
@shandilyacodes
@shandilyacodes 6 ай бұрын
Yeah, it's not very intuitive imho. Thanks for watching!
@SR-er8vt
@SR-er8vt 2 күн бұрын
Hi Ramendu, Is multithreading still maintains concurrency in multi-core or multi-processor ? Or it will be in parallel execution here?
@MTB_Bay_Area
@MTB_Bay_Area 5 ай бұрын
What IDE does he use here? I usually use IntelliJ. I like how clean his IDE is
@shandilyacodes
@shandilyacodes 5 ай бұрын
Hey! Glad you found my IDE setup cool. I am also using IntelliJ with couple of customisations ;) Can make a video if you want! 😅
@Rainy_tech
@Rainy_tech 5 ай бұрын
@@shandilyacodes Please do make a video on it. Also someone who is beginner, try to brief him about IntelliJ and how to use it for java. Please buddy.
@shandilyacodes
@shandilyacodes 4 ай бұрын
@@Rainy_tech Great suggestion, will surely consider making a tutorial on this topic on my channel :)
@rahulyadu1326
@rahulyadu1326 6 ай бұрын
is multithreading achieved by concurency or by parrallel execution in java . can we contorl whether multithreading is achieved by concurrency or parralellism in java
@shandilyacodes
@shandilyacodes 6 ай бұрын
I couldn't understand the question fully but I'd try to answer on the basis of what I understood In Java multithreading can achieve both the concurrency and parallelism. For the case of Concurrency, Multiple threads share the same CPU core, making progress by switching between threads. Useful in case of for I/O-bound tasks. For the case of Parallelism, Multiple threads running simultaneously on multiple CPU cores, effective for CPU-bound tasks. Thanks for watching! Happy learning.
@rahulyadu1326
@rahulyadu1326 6 ай бұрын
​@@shandilyacodes i got it. thanks ❤
@nithinmakam
@nithinmakam 6 ай бұрын
If the video is 30 sec more time, then total time will 5:55:55
@shandilyacodes
@shandilyacodes 6 ай бұрын
Haha! Yikes, I missed it. Thanks for watching.
@tabita333
@tabita333 6 ай бұрын
Im waiting for more courses with JavaScript 😊
@roverrace7147
@roverrace7147 6 ай бұрын
Woooooow
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@ArchibaldQuanlockHuntsman
@ArchibaldQuanlockHuntsman 6 ай бұрын
excellent tutorial as usual but isn't intel phasing out multithreading with lunar lake😢
@Baxon
@Baxon 6 ай бұрын
You are thinking of a hyperthreading, which is a feature on intel cpus, it is not the same as multihreading which is a software concept, Multithreading does not require cpus with hyperthreading.
@hammadyasir2174
@hammadyasir2174 6 ай бұрын
Please Make this same content for using python programming language....
@shandilyacodes
@shandilyacodes 6 ай бұрын
I'll add to my todo list! Thanks
@hammadyasir2174
@hammadyasir2174 6 ай бұрын
@@shandilyacodes when new course with python will be uploaded?
@akashmandal5253
@akashmandal5253 4 ай бұрын
at @44:32 which shortcut do you clicked
@shandilyacodes
@shandilyacodes 4 ай бұрын
I have a keyboard shortcut created for this thing called as "Distraction Free Mode" in IntelliJ
@akashmandal5253
@akashmandal5253 4 ай бұрын
@@shandilyacodes Thank you
@pankajbhanwala-
@pankajbhanwala- 6 ай бұрын
Day 1 33:36
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad you are continuing to go through the course, hope you'll find it worth by the end :) Happy learning!
@akashmandal5253
@akashmandal5253 4 ай бұрын
sir some notes are missing like executor service
@shandilyacodes
@shandilyacodes 4 ай бұрын
Hi, I haven't made any notes as such. Was just having some points to explain the theoretical concepts. I might have missed uploading those text in the code repo, will find if it's there, I'll share. Thanks!
@Crazy_Stories.C0M
@Crazy_Stories.C0M 6 ай бұрын
I think you should give a flutter certification like other free code camp certification so that we can prove that we are flutter developer I will be very thakful to you :-) Please reply I will comment until you anser me :-D And thanks alot to help us:-)
@wisdomackah5765
@wisdomackah5765 6 ай бұрын
Please sir Do video about Discrete math
@maximus3159
@maximus3159 6 ай бұрын
I dont even know Java, disappointed it's not C/C++...but leave a like all the same
@shandilyacodes
@shandilyacodes 6 ай бұрын
I understand your sentiment. Even if you are not familar with Java, the concepts atleast are transferrable to other languages which implement multithreading in some way or other. I am sure watching the video will have some value if you wish to learn multithreading or revisit the concepts. Thanks!
@cannedCPU
@cannedCPU 2 ай бұрын
C multithreading is much more involved. I recommend finding a book about the topic, especially if you plan to learn PThreads.
@Nathan-ng1kp
@Nathan-ng1kp 6 ай бұрын
I see you upgraded your workshop to a green screen :)
@BROOKnim
@BROOKnim 5 ай бұрын
I just wasted a interview cus i had no idea and hands on about multithreading and concurrency handling. Imma binge this video this weekend😃
@shandilyacodes
@shandilyacodes 4 ай бұрын
Happy learning :) Drop your questions or queries if any ! Thanks for watching.
@moments00000
@moments00000 4 ай бұрын
Some people hacking is just funny. What do u think about it?
@HarshKumar-rk4zm
@HarshKumar-rk4zm 6 ай бұрын
I think by while naming join method they are thinking like this : public class JoinThreadExample { public static void main(String[] args) throws InterruptedException { Thread one = new Thread(() -> { for(int i = 0; i < 15; ++i) System.out.println("Thread 1 : " + i); Thread innerThreadOne = new Thread(() -> { for(int i = 0; i < 20; ++i) System.out.println("Thread 1 inner : " + i); }); innerThreadOne.start(); try { innerThreadOne.join(); } catch (InterruptedException e) { throw new RuntimeException(e); } }); Thread two = new Thread(() -> { for(int i = 0; i < 25; ++i) { System.out.println("Thread 2 : " + i); } }); one.start(); one.join(); System.out.println("Done execution of both threads!"); } } thread main : ----------------> one.join() thread one : ---------------> innerThreadOne.join() thread innerThreadOne : -----------> thread main ----------> finish (Kind of joining two threads)
@shandilyacodes
@shandilyacodes 6 ай бұрын
This indeed is a correct way of interpreting the join concept. What I meant to say in the video is that it's not very intuitive, specially to someone who could be reading this concept for the very first time, without much context. Thanks for watching.
@quantum_parody
@quantum_parody 6 ай бұрын
right on time
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad you found it useful, happy learning :)
@yuzuru08
@yuzuru08 6 ай бұрын
4th video, asking for some projects using IDX
@redissimplified60
@redissimplified60 6 ай бұрын
ExecutorService executor = Executors.newSingleThreadExecutor(); -> I am using jetbrains jbr 17. when I compiled, it shows error like Autoclosable is not implemented in above. In this case, how come it shutdowns automatically. It didn't work. so I terminated with manual shutdown by writing executor.shutdown. can u help me in this?. which java version u have used during recording ?
@shandilyacodes
@shandilyacodes 6 ай бұрын
Hey! Glad to know that you are writing code along to learn, great step :) To answer your question, I am on Java 17. However, this should work for anything which is Java8+. Still if it's not working please check the settings in Intelli J. Below are the steps 1. Go to File > Project Structure 2. Check the Language level and ensure it's more than Java 8 Apply, save and re try! Still if it doesn't resolve the issue then File -> Invalidate Cache and restart. Let me know how it goes. Thanks!
@c0rti_s0l
@c0rti_s0l Ай бұрын
@@shandilyacodes Hello sir, I tried these methods and it still didn't work. I'm using openjdk 22 and set my language level to 22 as well. I tried other versions as well, but it didn't work.
@rismanrj3259
@rismanrj3259 6 ай бұрын
completed 45:30
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@StephanSingh2495
@StephanSingh2495 6 ай бұрын
Can someone suggest a good backend, resume level (1 year experienced candidate) project, where the knowledge of multithreading can be utilized to a good extent?
@xsdash
@xsdash 6 ай бұрын
ask chatGPT
@clintonndlovu687
@clintonndlovu687 Ай бұрын
can i get a certificate?
@ivyndane10
@ivyndane10 6 ай бұрын
Hello please can I get the link of freecodecamp update course link t html css thank you
@MitosdeArkovia
@MitosdeArkovia 6 ай бұрын
OMGGGGGGGGGG cuando estara en españollllllllllllllllllllllllllllllllllllllll
@Kneetbomb
@Kneetbomb 6 ай бұрын
Hopefully there's a multithreading and multiprocessing course for python
@galip48
@galip48 6 ай бұрын
Java that cass
@akash-kumar737
@akash-kumar737 6 ай бұрын
Yeah will love to see python course. Still it's worth the watch.
@prathamjain2762
@prathamjain2762 6 ай бұрын
Eagerly waiting for the python one..
@LalitPathak07
@LalitPathak07 6 ай бұрын
Me as well
@pramodjingade6581
@pramodjingade6581 6 ай бұрын
Same here, +1 for Python
@Invisible_0011
@Invisible_0011 6 ай бұрын
Keyboard typing sound is very irritating 😢
@__________________________6910
@__________________________6910 6 ай бұрын
Why not Python 😭
@galip48
@galip48 6 ай бұрын
4.00
@yogeshmishra2858
@yogeshmishra2858 6 ай бұрын
First
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@akhilboyini5920
@akhilboyini5920 6 ай бұрын
Second
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@laylachisom8996
@laylachisom8996 4 күн бұрын
Why is it always an Indian
@ГеоргиПеев-л7щ
@ГеоргиПеев-л7щ 22 күн бұрын
Very vague. I don't recommend it.
@ankitbhimani2100
@ankitbhimani2100 4 ай бұрын
So much noise is coming because of the keyboard key press.
@character640p
@character640p 6 ай бұрын
Why do almost every programming tutorials have bad font sizes? Do they still not know Ctrl + plus (zoom in/ increase font size) feature exists??
@yobroc6616
@yobroc6616 6 ай бұрын
It’s free. Why are you being ungrateful?
@theresourceroom7961
@theresourceroom7961 6 ай бұрын
dude, chill this is free. and probably better then most paid classes
@character640p
@character640p 6 ай бұрын
@@yobroc6616 I already told the reason. Why are being ignorant?
@shandilyacodes
@shandilyacodes 6 ай бұрын
Thanks for the feedback, I'll surely keep this in mind for my next videos. :)
@jackhandyy
@jackhandyy 6 ай бұрын
I can't listen to punj-glish. Wonder if some one can re audio this....
@manishshaw1002
@manishshaw1002 6 ай бұрын
thanks no one did it in half-eatend uk or us accent.... I don't know why most of Uk guys eats last char from their word ..... Anyway the knowledge is good if we ignore accent
@cannedCPU
@cannedCPU Ай бұрын
Wow, imagine feeling this entitled
@plumheadedparrotlife.7689
@plumheadedparrotlife.7689 6 ай бұрын
First
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
@nasseribrahim1124
@nasseribrahim1124 6 ай бұрын
First
@shandilyacodes
@shandilyacodes 6 ай бұрын
Glad to share the knowledge, thanks for watching! :) Happy learning.
8 Rules For Learning to Code in 2025...and should you?
12:59
Travis Media
Рет қаралды 271 М.
Multithreading in Java Explained in 10 Minutes
10:01
Coding with John
Рет қаралды 1 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
Мен атып көрмегенмін ! | Qalam | 5 серия
25:41
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН
Multithreading Code - Computerphile
15:54
Computerphile
Рет қаралды 392 М.
Transformers (how LLMs work) explained visually | DL5
27:14
3Blue1Brown
Рет қаралды 4,5 МЛН
Java multithreading 🧶
15:18
Bro Code
Рет қаралды 144 М.
Thread Pool In C++
20:19
CppNuts
Рет қаралды 15 М.
10 Math Concepts for Programmers
9:32
Fireship
Рет қаралды 2 МЛН