Тёмный

Garbage Collection Algorithms: Mark Sweep, Generation Hypothesis and JIT code injection 

Gaurav Sen
Подписаться 583 тыс.
Просмотров 66 тыс.
50% 1

Garbage collection is a way of automatic memory management provided by modern programming languages like Java, Go, Python and JavaScript.
We talk about how garbage is identified, the tricolor algorithm, the generational hypothesis and it's effect on latency and throughput.
Scenarios where the generational hypothesis doesn't work are also discussed. This includes caching and nepotism in queues (old generation objects promote young ones without due cause).
0:00 - Agenda
0:38 - Garbage Identification
0:50 - The Tricolor Algorithm
2:53 - Making the GC run faster
3:12 - Concurrent Collectors
3:49 - Generational Hypothesis
4:50 - Memory diagram
7:43 - Code injection JIT
9:09 - General hypothesis exceptions
9:43 - Nepotism
Part II: • Garbage Collection Alg...
References:
Tricolor Algorithm: Knuth, The art of computer programming
Generational Hypothesis: people.cs.umass.edu/~emery/cl...
System Design Video Course: interviewready.io/
Software Engineering Fundamentals: • Software Engineering F...
You can follow me on:
Instagram: / applepie404
LinkedIn: / gaurav-sen-56b6a941
Quora: www.quora.com/profile/Gaurav-...
Twitter: / gkcs_
#GarbageCollection #JavaGC #JavaGarbageCollection

Опубликовано:

 

27 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 169   
@SabaS2105
@SabaS2105 3 года назад
Great video... glad you picked the fundamental concepts, these are usually left behind with so many fancy tech stuff coming up !
@williamragstad
@williamragstad 3 года назад
I love this guy, he explains everything in enough detail to make one understand, and fast enough to make one take the time! Really nice video, keep it up! You're also hilarious with the small jokes spread out in the vid.
@gkcs
@gkcs 3 года назад
Thanks William! 😁
@biswajitpramanik3426
@biswajitpramanik3426 3 года назад
Great as always! Following you since college days, your content is getting better and better. Keep it up Brother!
@mani_naik
@mani_naik 3 года назад
Watched it in 0.7x and understood the vid thoroughly. I guess my brain needs optimization, is there an algorithm for it ?
@gkcs
@gkcs 3 года назад
No I think my tongue needs rate limiting 😛
@indiansoftwareengineer4899
@indiansoftwareengineer4899 3 года назад
@@gkcs or can we use buffer at @Mani's side? but that won't be synchronous, what do you think.... Lol.... Jokes aside, nice videos, great channel...
@mani_naik
@mani_naik 3 года назад
@@gkcs haha great videos man ❤️
@user1994gms
@user1994gms 3 года назад
@@gkcs good video buddy.. Can u explain what are the improvements and drawbacks done in gc of java 1.8 version? Seems like memory allocation and gc changed a bit by bringing new concept from version 8 If not in detail.. but try to cover this idea in part-2
@affanshaikh5353
@affanshaikh5353 3 года назад
I'm a new grad from Credit Suisse, had missed your event due to some work.. everyone told me "u missed the best session of all" Thanks for putting it up here....I now get it why it was the best one !
@gkcs
@gkcs 3 года назад
Fantastic!
@AnkushSharma-be5xv
@AnkushSharma-be5xv 3 года назад
Thanks Gaurav for this video. These basic concepts gets masked with all the other fancy stuff coming around.
@shubhamsonar1816
@shubhamsonar1816 2 года назад
your energy always motivate me
@himanshutomar7542
@himanshutomar7542 3 года назад
great free content. appreciate it, man!
@ishansahu6405
@ishansahu6405 3 года назад
Great Content! Waiting for Part-2
@anubhavjain400
@anubhavjain400 3 года назад
Video released at the right Time. I am exploring internals of Ruby language and understanding the GC. Studying these papers should help me get along with some concepts that are getting used in th actual language GC. Thanks for the video. ❤️
@gkcs
@gkcs 3 года назад
Awesome! I have another video on GC in the works 😁
@sebastianmestre8971
@sebastianmestre8971 3 года назад
Very cool! I've been meaning to improve the gc in my language's interpreter for a while now
@jagadeeshkancherla4938
@jagadeeshkancherla4938 3 года назад
This is awesome man waiting for the next part.
@gkcs
@gkcs 3 года назад
Working on it 😁
@rahulsolanki__
@rahulsolanki__ 3 года назад
Hey Gaurav, Thanks for such amazing content.
@sabareesh_m21
@sabareesh_m21 3 года назад
Awaiting for part two 🔥
@varunmundale4627
@varunmundale4627 3 года назад
Never knew I wanted to know about this!
@tobyho92
@tobyho92 3 года назад
Thank you! Very timely for me as I am preparing to talk about generational GCs as well. I liked learning that the generation hypothesis is being challenged as that's something that's been lingering in the back of my mind.
@gkcs
@gkcs 3 года назад
Well, both ZGC and Shenandoah are going to have multiple generations in their future iterations. Since the generational hypothesis seems to work for most usecases. There is a commerical JVM from Azul which has multiple generations called C4. It's performance is said to be good. All the best for the talk!
@tobyho92
@tobyho92 3 года назад
@@gkcs thank you for the info. I seems that improving GCs is an active area for research. What is your opinion of GCs vs the lighter weight schemes like reference counting (Swift/Objective-C) or ownership-based schemes like Rust?
@gkcs
@gkcs 3 года назад
@@tobyho92 Reference counting is fast (although the cycle detection algorithms still take time). Haven't read about Rust's algorithms yet. Sounds interesting.
@shivprakashy
@shivprakashy 3 года назад
Got good learning.. thanks Gaurav waiting for part II. I don't mind even 1hr long content like this😉
@ibrahimshaikh3642
@ibrahimshaikh3642 3 года назад
Good explanation with diagram. Thank u for making such deep concept.
@officebatman9411
@officebatman9411 6 месяцев назад
You present complicated topics in simple ways :) Great video!
@gkcs
@gkcs 6 месяцев назад
Glad you think so!
@sandeepgupta007
@sandeepgupta007 3 года назад
Intresting video as always! Thanks !!
@gkcs
@gkcs 3 года назад
Thank you 😁
@prajaktashende577
@prajaktashende577 3 года назад
Wow Gaurav, This is THE BEST EXPLANATION OF "NEPOTISM" :P :P I have been a long time lurker, recently decided to subscribe to your channel. Your explanation on videos is really detailed and so full of knowledge. Thank you! :) Glad to hear that you read all your comments even now.
@gkcs
@gkcs 3 года назад
Thank you Prajakta 😁
@nipunmittal19
@nipunmittal19 3 года назад
Great content as always. I think video breaks were more frequent in this video obviously owing to great animations. However, please try to smooth these breaks if possible. Thanks.
@gkcs
@gkcs 3 года назад
Noted!
@HolyRamanRajya
@HolyRamanRajya 3 года назад
Idk why I keep binging your design videos although its very much beyond my current work. This one was kind of in my level of understanding haha.
@gkcs
@gkcs 3 года назад
Yey 😁
@Shreya-rr2ov
@Shreya-rr2ov 3 года назад
Sir keep making video on such topics we really enjoy and gain some knowledge out of it THANK YOU 🙏🙏
@gkcs
@gkcs 3 года назад
On it, thank you 😁
@ashwintantri
@ashwintantri 3 года назад
Crazy stuff, i mean, i legit ignored the garbage collection thing as if it was just another algorithm but it wasn't the case, it is a collection of multiple algorithms, thanks Gaurav for explaining this so elegantly, off to watch part-2!
@gkcs
@gkcs 3 года назад
Thank you 😁
@prajwalgaurav761
@prajwalgaurav761 3 года назад
Amazing content as always
@gkcs
@gkcs 3 года назад
Thank you 😁
@akilanmansinghraj1851
@akilanmansinghraj1851 3 года назад
Its awesome , waiting for next part
@gkcs
@gkcs 3 года назад
Coming soon 😁
@harsha8635
@harsha8635 3 года назад
Thanks a lot! I already subscribed yor channel while preparing system design. Watched all video's twice. All though I never read or study that much in my professional career. But your videos are crisp + to the point and the most important thing "FUNNY", so never felt bored(as compared with MIT videos). Great work, keep on doing that. I have a request can you make a full playlist for oops in detail and more os videos. P.S : First time I wrote comment as you mentioned you do check all the comments. Thanks once again.
@gkcs
@gkcs 3 года назад
Thank you 😁
@tifyspoondra7401
@tifyspoondra7401 3 года назад
Hello, happy to see a video after 2 years. :-)
@gkcs
@gkcs 3 года назад
Hit Subscribe to get the latest updates :D
@tifyspoondra7401
@tifyspoondra7401 3 года назад
@@gkcs hitted, now please give heart. 8-)
@manngondaliya4704
@manngondaliya4704 3 года назад
Great insights .🔥
@niharikaverma9166
@niharikaverma9166 3 года назад
Great content again! Thanks a bunch. :) Could you also take different algorithms that are put to use for Garbage collection process in Java & talk about them for your next video? Especially the changes made after Java 8? Good Luck!
@sifathasan2755
@sifathasan2755 3 года назад
Never thought bfs, dfs can be used for this. 🤯
@prateektripathi1158
@prateektripathi1158 2 года назад
The Lindy effect is a theorized phenomenon by which the future life expectancy of some non-perishable things, like a technology or an idea, is proportional to their current age. Thus, the Lindy effect proposes the longer a period something has survived to exist or be used in the present, it is also likely to have a longer remaining life expectancy (Source Wikipedia)
@gkcs
@gkcs 2 года назад
Wow, that's interesting!
@shailesh.nallagonda
@shailesh.nallagonda Год назад
This is Gold ! Thanks.
@velvet-ish7059
@velvet-ish7059 2 года назад
Thank you for the very informative video
@raj_kundalia
@raj_kundalia 2 года назад
Watched on 17 October, 2021 - Thanks for the video.
@HarshKapadia
@HarshKapadia 3 года назад
Super interesting video, Gaurav! Could you make a video on how you come up with a topic, research on it (you always find something very interesting and awesome) and then compile it all?
@pratikmehta6207
@pratikmehta6207 3 года назад
Ek dhum gajaab, Great Man!
@gkcs
@gkcs 3 года назад
😁
@aanuraag83
@aanuraag83 3 года назад
Hey Man, recently I became your fan !..( that rhymes :D ) . Coding always came naturally to me, but other aspects like studying bored me :D. Your enthusiasm has magnetic effect, now finally I can skip Sitcoms and study :) Thank you very much Buddy !
@gkcs
@gkcs 3 года назад
Thank you!
@all_top_5_features
@all_top_5_features 3 года назад
@Gaurav Sen Loved the concept....Just wanted to know....how does garbage collection works when we have static functions? Is it good practice to have static functions?
@kalpakHere
@kalpakHere 3 года назад
Boom Boom Boom.. Had used this once in an interview only to break into a small laughter.!!
@gkcs
@gkcs 3 года назад
Hahaha 😁
@arnabmukherjee5840
@arnabmukherjee5840 3 года назад
Best GC video I have ever seen.
@gkcs
@gkcs 3 года назад
Thank you 😁
@namratashah5116
@namratashah5116 2 года назад
Interesting content ...thank you 😀
@abothasnoname2537
@abothasnoname2537 3 года назад
0:15 - Agenda 0:38 - First problem of garbage collection: Identify what is garbage 0:50 - The Tricolor Algorithm (Flawless with no mistakes but slow) 2:53 - Three ways to make GC faster | 1. incremental, 2. optimise, 3. concurrency 3:12 - Time slicing 3:46 - Step1. Optimise the process 3:49 - Generational Hypothesis explanation begins 4:50 - Memory diagram 7:43 - Code injection with JIT 9:09 - There are certain cases where General Hypothesis does not work. Cacheing for example 9:43 - Another example. Garbage collection nepotism
@tanveerhasan2382
@tanveerhasan2382 2 года назад
Bless your heart
@DeepakSingh-uf5vv
@DeepakSingh-uf5vv 3 года назад
you need to watch this at least twice, to absorb this great content.
@gkcs
@gkcs 3 года назад
🤓
@_init_innovate29
@_init_innovate29 3 года назад
It was really great explaination👍👍
@VamsiM
@VamsiM 3 года назад
Great content. I knew this stuff, but it was a great source to recollect my old memory. Do you have any specific video talking about Kafka?
@gkcs
@gkcs 3 года назад
Not yet :)
@SumitSharma-xf7ek
@SumitSharma-xf7ek 3 года назад
This was a pretty informative and well-structured video. All the concepts were explained with great alacrity. I have one doubt in the last example, node 5 is pointing to node 4 so even without the generational hypothesis this should be alive, right?
@gkcs
@gkcs 3 года назад
Thanks for pointing it out! It should be a simple linked list with just forward pointers in every node.
@ahmedifhaam7266
@ahmedifhaam7266 2 года назад
Thanks, hope you make an updated video as well though, good content.
@harshshukla7260
@harshshukla7260 3 года назад
Thank you very much Sir🙏
@VikhyatBhatnagarTECH-BLR
@VikhyatBhatnagarTECH-BLR Год назад
is there a way to see the garbage collector running in java program in a linux machine? How to check which objects got removed by gc? what should the ideal window of time gc should be run? should it too frequent or too long?
@ShaliniNegi24
@ShaliniNegi24 3 года назад
Amazing video.
@gkcs
@gkcs 3 года назад
Thank you 😁
@aneeshsharma3830
@aneeshsharma3830 3 года назад
Great Stuff,
@aoboyang8735
@aoboyang8735 3 года назад
Thank you sir.
@gkcs
@gkcs 3 года назад
That's the first comment! Thank you 😁
@NivendhaKannan
@NivendhaKannan 3 года назад
Knuth, The art of computer programming which volume/chapter they have covered this? its soo nice u make things understandable much easier
@gkcs
@gkcs 3 года назад
Search for the Tri-color algorithm in it. It's in graph traversals, I think.
@saritakumari-oh8fs
@saritakumari-oh8fs 3 года назад
Elite explaination
@gima123123
@gima123123 3 года назад
I have a question: At 10:02, you say, that 1,2,3,4 are dead because there are no pointers to them. However 5 is pointing to 4, 4 to 3, etc. So 1,2,3,4 will never get collected, since 5 is pointing to them. Or am I missing something?
@gkcs
@gkcs 3 года назад
Oh no...I drew a doubly linked list 🙈🤪 I should have draw a simple linked list with just forward pointers in every node.
@dyslexicunt
@dyslexicunt 3 года назад
Hi Guarav, awesome content (as always), learnt a _lot_ (as always!) but really hard to hear what you were saying on this video due to audio quality (had to keep skipping back to re-watch). Much love
@gkcs
@gkcs 3 года назад
Thank you! I have fixed the audio settings now. I have also added subtitles to help get around the audio problem 😁
@Iamhomkar
@Iamhomkar 3 года назад
Could you share a link to your jconf talk if it’s accessible.
@shreymohan3464
@shreymohan3464 3 года назад
Hiya! Can you please suggest some literature on GC policies in Java? Dealing with the time outs caused by long GC pauses is really a pain.
@gkcs
@gkcs 3 года назад
Good idea. Let me see if I can find some useful tips to work around them :)
@kalhariliyanagama
@kalhariliyanagama 3 года назад
Hey pls post a series of videos that are a bit autobiographical, about your journey in computer science, how you keep up with the technology, what books you read, and who do you follow etc.
@beloaded3736
@beloaded3736 3 года назад
Thank you 💖
@gkcs
@gkcs 3 года назад
Thank you x3000 😁
@deepanshunagpal3845
@deepanshunagpal3845 3 года назад
what all improvements done in garbage collection java 8 version . Which was not there earlier in version 7??? Please revert .🙏
@ypucandeleteit
@ypucandeleteit 3 года назад
Fascinating! Are there any patterns that I can utilise from this. Should I build my caches differently or configure my GC for my bespoke application
@gkcs
@gkcs 3 года назад
You can change the GC algorithm and configurations based on your application, yes. For high throughput, use a parallel GC. For caches, I would choose ZGC or Shenandoah.
@ypucandeleteit
@ypucandeleteit 3 года назад
@@gkcs thank you
@jeremy.N
@jeremy.N 3 года назад
Hello, I found your Channel because of the TimSort videos and i really liked all your videos that i watched. So uhm could you at some point explain grailsort? Because i believe that is the only algorithm which i couldnt find a good explanation for. And afaik it is even faster than TimSort when correctly optimized.
@arunkumardave1333
@arunkumardave1333 3 года назад
How do we know which variables are unreachable (garbage) at any given time? The pointers (1,2,3,4..) which we've colored grey/white, along with the incoming/outgoing arrows? Basically, which part of the process decides that and when?
@gkcs
@gkcs 3 года назад
The 'root set' has the set of objects which are considered 'alive' at the start. These are mostly local variables in the currently running threads.
@JaySalunke-xs4dd
@JaySalunke-xs4dd Месяц назад
what is good by letting do their do their things in backrgound like GC or we should handle it by own that we do in C ?? which is good
@sidsaliyam9414
@sidsaliyam9414 3 года назад
You are absolute rippa !
@jollysrivastava3326
@jollysrivastava3326 3 года назад
Wow..Nice video. Where is part-2 of this video?
@gkcs
@gkcs 3 года назад
ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-trkYGEGT6_w.html
@shubh0000071
@shubh0000071 3 года назад
I am thinking about joining your system design course. One question, do you offer any certificate of completion?
@gkcs
@gkcs 3 года назад
Yes we do!
@asheeshpratapsingh4948
@asheeshpratapsingh4948 3 года назад
You Rock as always ❤️👍👍👍 ##What about old gen object after certain period of time
@skaterope
@skaterope 3 года назад
thats what we need !!!!
@ishu526
@ishu526 3 года назад
you are amazing👍
@gkcs
@gkcs 3 года назад
Thank you 😀
@suryasingh6707
@suryasingh6707 3 года назад
might be a silly question but when an object A is promoted means its memory address changes. So all the objects that are pointing to object A need to update their reference? Is this understanding correct? If so then this might be a huge overhead to keep on updating the reference address of parent objects whenever any object child object is promoted
@gkcs
@gkcs 3 года назад
No, there is no movement of objects based on regions.
@suryasingh6707
@suryasingh6707 3 года назад
@@gkcs so when you say that the objects move from one region say Eden to survivor 1,2 and so on the object is not moving then what exactly is happening and how the jvm understand that this object belongs to which region. I know it might be difficult to explain here but maybe you can cover it in the next part My question is somewhat similar to this stackoverflow.com/questions/35548337/does-object-reference-change-after-gc#:~:text=Since%20all%20young%2Dgeneration%20GCs,to%20a%20different%20memory%2Darea.&text=And%20when%20objects%20are%20moved,to%20the%20new%20memory%2Dlocation.
@arnabmukherjee5840
@arnabmukherjee5840 3 года назад
Gaurav awesome video, I have one question: if an old generation object is having reference to young generation object. How is that young generation object not reachable and why attempt of GC is done ?
@gkcs
@gkcs 3 года назад
The GC is attempted since many objects in the young region are dead. Objects having a pointer from the old region rare, and can be marked as alive using the card table.
@josephcohen734
@josephcohen734 2 года назад
I understood everything except when he started talking about how JIT solves the problem of old objects pointing to young objects. Does anybody know how that solves the problem.
@JaySalunke-xs4dd
@JaySalunke-xs4dd Месяц назад
my question is. Is It important to know about the GC algorithm for like fresher. and what u meant by dependent there is it like hard coupling? That one object depending on other makes that object to stay in background process which u explain in these video
@pierce8308
@pierce8308 3 года назад
Excellent video. But small nitpick. The background noise seemed to cutoff too often during your presentation. I think that those parts were cut and spliced together. (2:39) Was kinda jarring breaks the concentration. Hope you can find a solution for that.
@archiexzzz
@archiexzzz 3 года назад
4:31 Instagram Story typefaces XDDD
@meghasharma3092
@meghasharma3092 3 года назад
Hi Gaurav .. i like your content a lot. Please make a video on splitwise high level system design , DB design , smart settle functionality in groups etc.
@gkcs
@gkcs 3 года назад
Thank you 😁 I have this as a low level design chapter in my system design course: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-mIcCBrZsj2E.html Cheers!
@meghasharma3092
@meghasharma3092 3 года назад
​@@gkcs Thank you. I checked it.. It's awesome content. The course is worth buying. :)
@IBITZEE
@IBITZEE 2 года назад
How about a theory comparison of garbage collection strategies used in Java/JS/Python/C#/etc.
@ManasviBatra
@ManasviBatra 3 года назад
Wow. Didn't actually knew that stacks, queues, BFS, DFS are actually used here. Does card table also save the pointers on new generations in the same manner?
@gkcs
@gkcs 3 года назад
The card table has bits to mark old generation pages which have pointers to the young generation.
@prateekkanujiya9775
@prateekkanujiya9775 3 года назад
Man you are like MASIHA for us😁
@vishaln9609
@vishaln9609 3 года назад
there is some background noise that disturbs when listening. An easy fix to it is to record the noise and merge it in places where there are no audio cuts. The video will be more smooth.
@gkcs
@gkcs 3 года назад
That's a good idea!
@namanbhardwaj3621
@namanbhardwaj3621 3 года назад
Dada aap mahan hai,me raat ko 2:30 baje ye video dekh rha just because this has been a tough topic to understand. Aap adbudh hai😂😂🙏🙏🙏
@gkcs
@gkcs 3 года назад
😁😛
@PhoenixRisingFromAshes471
@PhoenixRisingFromAshes471 3 года назад
sir i have a request your videos on sys designs are really outstanding sir please make a video on designing tiktok... although i wasnt asked this question in interview but i have a deep curiosity regarding hiw tiktok manages such huge no of video uploads.
@isanayashiro4166
@isanayashiro4166 3 года назад
How does GC work with String Pool?
@gkcs
@gkcs 3 года назад
String literals are stored in the string pool. We could intern strings into the string pool too. The GC treats string pool objects the same as normal objects (remove if unreachable).
@punerealestatebuilder
@punerealestatebuilder 3 года назад
Bhai wo Achor ka photo lga ke sab mja kirkira kr diya esh video ka
@Yash-fz7kw
@Yash-fz7kw 3 года назад
😍😍
@yawarjamal909
@yawarjamal909 3 года назад
"So you know how to reverse a linked list .." enough of this algo expert ad bs I totally respect algo expert guy but this YT ad on almost every YT video is now killing me. Edit: Sorry about my rant Gaurav but great another video
@abhinavghosh725
@abhinavghosh725 3 года назад
One of the worst mistakes- Watched the video first time in 1.5x So again had to watch it in 0.5x! LOL!
@gkcs
@gkcs 3 года назад
😛
@raghurambaisani7504
@raghurambaisani7504 3 года назад
the quality of the content is awesome but there is a lot of background noise
@gkcs
@gkcs 3 года назад
Yes, the mic settings have been fixed now :)
@nikhilmeruva1951
@nikhilmeruva1951 3 года назад
Content is good , but there is some disturbance in the audio , I'm sure you address this thing in next videos.
@gkcs
@gkcs 3 года назад
Yes, I've fixed the mic settings now :)
@aniketfuryrocks
@aniketfuryrocks 3 года назад
what about reference counting
@gkcs
@gkcs 3 года назад
That's a good idea if you handle cyclic links. A lot of python implementations use reference counting.
@aniketfuryrocks
@aniketfuryrocks 3 года назад
@@gkcs But, hands down, rust has the best memory management, the mix of ownership and reference counting is so good.
@chhandanaskar
@chhandanaskar 18 дней назад
Mark and Sweep algo not explained
@kiranprogamer
@kiranprogamer 3 года назад
No comments down here, hmm.., strange
@gkcs
@gkcs 3 года назад
You are early :D
@karansaluja3315
@karansaluja3315 3 года назад
Basically "gaadi waala aaya ghar se kachra nikaal"😉
@vijayhathimare4520
@vijayhathimare4520 3 года назад
Dude... can you please add some free videos in interviewready.io ? which are already free in youtube.
@vishalgaurav4411
@vishalgaurav4411 3 года назад
2 views and 10 comments 😂
@gkcs
@gkcs 3 года назад
I guess the Google servers are a little overloaded :P Or they have updated their view count algorithms a bit too much lol.
@backup0164
@backup0164 3 года назад
Why am I getting ads in German??😂
Далее
Coding Was Hard Until I Learned THESE 5 Things!
7:40
ЭТОТ ПЕНЁК ИЗ PLANTS VS ZOMBIES - ИМБА!
00:48
Java's G1 Garbage Collector
25:55
Просмотров 14 тыс.
Garbage Collection (Mark & Sweep) - Computerphile
16:22
What is DATABASE SHARDING?
8:56
Просмотров 911 тыс.
I gave 127 interviews. Top 5 Algorithms they asked me.
8:36
What is an API and how do you design it? 🗒️✅
15:26
The Truth About Learning Python in 2024
9:38
Просмотров 159 тыс.