@@aytech6867 json file تتعامل معاه باكثر من طريقة ولكن stream i/o الافضل اما اذا كلن الاستدعاء عن طريق http مثل الانترنت فنستخدم HttpClient وعملية Parse هي تحويل البيانات التى على شكل json الى object بداخل الذاكرة
هاي المشاهدة الاول ولقيت شوية صعوبة في dispose وجزئية الusing تتحول ل try بس يلزمني اعيده مرة واثنين لحتى استوعبه بالكامل .. فيما عاد ا هذا الدرس كان جمييييل جدا ...ألف شكر
شرح ذكي ومختلف ذو مهاره عاليه لا يمتلكها الكثير كتسليط ضوء ساطع على المناطق المظلمه والمبهمه أمامنا خلال مسيرة تعلمنا جزاك الله خيرا على هذا المجهود الرائع مهندس عصام .
صراحة لا أدري ما اقول، علم يوزن ذهبًا، تحضيرًا وإلقاءًا.. أقول هذا بعد اطلاعي على الفصل المتعلق بال Stream IO من كتاب C# in a nutshell، وما أظن المرء يمكن أن يزيد في التبسيط على ما جئت به! جزاك الله خيرًا..
محاضره ممتعه جدا و وبالنسبه اللي ما كانت صعبه لاني كنت بكتب على ورقه وقلم كل الشرح وطبقت معك الكود ! وانا انبسطت على الusing لانو هاي معلومه خفيه وان شاء انها من علامات القوه عندي رح تصير جزاك الله خيرا دكتورنا
بارك الله فيك مهندس عصام شرح رائع وجعله الله في ميزان حسناتك ومن تحب لكن لدي ملاحظة لو سمحت لي.. حضرتك خلال الشرح وضحت انو httpClient هو الاوبجكت الذي يحتوي على unmanaged كود ينفذ مباشرة الى لغة الآلة ولا يمر حسب التسلسل من مترجم اللغة ثم IL وصولا الى CLR فلذلك لا تراه ولا تتعامل معه جامعة النفايات GC والاوبجكت الحالي currencyService هو ال managed كود أي يترجم من الكود المصدري الى IL ثم CLR وهنا تستطيع جامعة النفايات تنظيفه من الميموري بشكل ضمني عند الانتهاء منه عندما تقوم بعملها فالملاحظة انك عندما قمت ببناء الميثود المحمية الافتراضية اي المرئية من قبل نفس الكلاس ومن الانواع التي سترث من هذا الكلاس ويمكنهم الهيمنة والتعديل عليها dispose (bool disposing) اذا كان disposing : true حضرتك اعتبرت انو () httpClient.dispose هي عملية تنظيف managed كود على الرغم من ذكرك بأن httpClient هي من تحتوي unmanaged كود .. واعتبرت الكود خارج جملة ال if هو عملية تنظيف unmanaged كود وتنظيف ال larg fields على الرغم من ان هذا التنظيف يكون للاوبجكت الحالي currencyService وهو حسب شرحك يعتبر managed كود ... ☆ حسب فهمي المتواضع الا يفترض ان تكون هذه ال() httpClient.dispose هي تنظيف ال unmanaged كود والكود الذي يليها هو تنظيف managed كود وال larg fields .... ثم انك لم تكتب اي كود بهذا الخصوص فهل ينفذ ضمنيا ؟ ☆ قد اكون لم افهم الصورة بالشكل الصحيح واعذرني على الاطالة وشكرا ☆
انا أشكرك أخي أحمد وجزاك الله خيرا لطرح هذا السؤال المركز ووضوحه الممتاز. كل كلمة انت كتبتها هي اللي بقيت بعقلي وتساؤلات كثيرة حول هذا الموضوع هل حصلت على جواب ام لا واذا حصلت عليه شاركني اياه
@@sky-soft-2024 العفو اخي العزيز ... ▪︎ لم أحصل على الاجابة بعد لانني صراحة لم ابحث في الموضوع ووضعته للمراجعة لاحقا لانني اريد الاستزادة في هذا الجانب .. طبعا الاستاذ عصام يقدم محتوى رائع ويعطي من وقته وربما لم يرى السؤال وهذا وارد . ▪︎ حتى هذه اللحظة اعتقد انها سقطت سهوا من المهندس والاستاذ عصام اي خانه التعبير أو لم افهم الصورة بالشكل المطلوب ونحتاج البحث اكثر في هذا الباب لانني لم ابحث بعد واشعر بنقص معين لدي والصورة ليست مكتملة وواجبنا البحث... وهناك تساؤلات مختلفة تدور في عقلي احيانا واعتقد نابعة عن حب التعلم الصحيح وأسال الله التوفيق لي ولك اخي وللجميع كل الاحترام
@@ahmadalsibakhi2079 أولاً أشكرك على الرد أخي أحمد ثانياً كلامك جعلني مرتاح بأن هناك شخص في نفس المجال وفي نفس المسار بالتحديد وتفكيره وتساؤلاته هي بالضبط مثل تساؤلاتي ثالثا مثل ما انت قلت ربما المهندس عصام لم يرى السؤال او لم يجد الوقت اللازم للرد. وسؤال أخير ربما قد شغلتك عن أعمالك اخي احمد هل أكملت سلسلة #C؟
ال httpClient is a manage object لكنه لما بيعمل request وبيفتح connection ويجيبلك مصادر من علي الانترنت من المصادر دي الي بتكون unmanaged resources الي بسببها بن implement ال IDisposable علشان ننضفهم
طب ما استخدم ال destructor من الاول و خلاص يمسح unmanaged و ككده كده ال garbge هيمسح ال managed مع شويه validition لتجنب ال nullExcpetition و تمام اوي كده 22:15
when sending false to dispose in the finalizer u said if he reach to this part (destructor) the it for sure has disposed the 'managed code', I did not understand why is that because if he called the dispose method then the GC.suppressFinlizer has already canceled the calling of the finlizer can u explain this part please
The Finalize method, also known as the finalizer, is typically called by the garbage collector. It's essentially the last chance to clean up any resources. When you explicitly call Dispose, you're supposed to manage those resources yourself, alright? You're in control. Now, if you're calling Dispose and then using GC.SuppressFinalize(this), you're essentially telling the garbage collector, "Hey, don't bother with the finalizer, I've got this." That's why the finalizer doesn't need to dispose of managed resources if it's reached. If it does get invoked, that means Dispose wasn't called, and now the finalizer has to clean up unmanaged resources. You don't send false to Dispose from the finalizer to avoid double-cleaning of managed resources, because by the time you're in the finalizer, managed resources should have been dealt with or are already out of scope.
thank you for take time and effort to respond I really appreciate that I think I havent demonstrate my question right we have the managed resources where the only way to clean those rescourses are by calling the method Dispose right? so when you call the Dispose method you have alread cleaned the managed rescourses so when this happens you call the GC to tell it that u dont need to clean this object that has the managed rescourses because I already did [GC.SuppressFinalize(this)] the problem is whats next: when the user did not cleaned the managed rescourses then he for sure hasnt call the method Dispose therefor he did not tell the GC to not call the finalizer so naturally the GC will call the Dispose method (because its in the finalizer body) so now knowing that the user did not clean the managed code why did we send false to the Dispose method in the finalizer after knowing for sure that the user did not call the Dispose method therefor the managed rescourses are not disposed yet I hope u understood me now🤍 @@Metigator
@@mustafahaider9115 The reason you send false in Dispose(false) when called from a finalizer is that the finalizer is meant to release unmanaged resources, NOT managed resources. Why? Because by the time the finalizer runs, there's no guarantee that the managed resources are still in a state where you can safely interact with them. Trying to dispose of managed resources from the finalizer can lead to unpredictable behavior because other finalizers might have already run, affecting those resources. It could be a mess. So, while your question attempts to point out a supposed "problem" the real problem would be attempting to dispose of managed resources from a finalizer. And that's why it's designed this way. There, I've clarified it for you again. You're welcome.
جزاك الله عني كل خير استاذي الوقت الذي اعمل فية اي تعليق هو وقت اكمل المقطع. الله يحفظك ويحميك ويسعدك استاذي من بعد اذنك اذا فية معك رابط تدريبات مكثفة للذي بنتعلمة في الplaylist ممكن تقل لي علية . ولك خالص الدعاء والشكر حفظك الله ورعاك استاذي
جزيل الشكر لك استاذ، لكن يوجد سؤال بعد ما ارسلت ال false ك arg لل protected dispose ، كيف سيعرف الكلاس اني اريد تنظيف ال unmanaged فقط و انا لم اقم ببناء اي شيء بخصوص حالة ال false, نحن في الكود فقط فندنا حالة ال true ،هل هو ضمناً سيفهم في تلك الحالة؟؟
ما شاء الله محاضرة في القمة ربي يجعلها في ميزان حسناتك استاذ أريد فقط سؤالك عن اذا ممكن تعمل لنا فيديو عن كيفية deployment المشروع عند العميل ؟ و كيف يتم Build Project في المشاريع الكبيرة هل في كل مرة بيضيفوا خاصية جديد يعملوا Build المشروع كامل ؟
شكرا ليك علي كل ما تقدمه لنا دايما يعطيك العافيه ويعوضك الخير دايما ♥..سوالي في الدقيقه 40 والثانيه 18 لو انا استخدمت using وكان فيه مشكله في url هيعمل exception فهل يفضل في الحاله ديه استخدم try , catch شكرا ليك
شرح جميل جدا يا بشمهندس ما شاء الله وعندي طلب صغير لو ممكن حضرتك ترشحلنا اكواد نقرا فيها بعد منخلص ال playlists بحيث نقيس فهمنا لمفاهيم ال C# بشكل كويس عشان ننقل عالخطوه الجايه وتكون مناسبه لل begginers اللي زي حالاتنا لاني كل مبخش على اكواد من جيتهاب بلاقيهم مدخلين اكواد تبع linq و حاجات تبع windows forms و entity framework فمش عارف اجيب حاجه مناسبه لمستوانا نقرا فيها فلو ممكن حضرتك تساعدنا وربنا يكرمك ويجازيك خير
I really appreciate your hard work,thank you I just have a question When i write a code after watching vedio in the finalizer , i called this.Dispose() , because if it reachs to call finalizer ,that means i didn't dispose unmanned code , i don't get it why you call Dispose (false) Could you explain it for me
Calling Dispose in the finalizer to signal that you're only interested in releasing unmanaged resources. The false parameter typically means, "Hey, just deal with the unmanaged stuff because the managed resources will be taken care of by the garbage collector eventually
حسب اللغة اولا واخيرا وفي الدوت نت هو Compiler ------- Official documentation ----------- Compiling MSIL to native code. At execution time, a just-in-time (JIT) compiler translates the MSIL into native code. During this compilation, code must pass a verification process that examines the MSIL and metadata to find out whether the code can be determined to be type safe.
بعد اذنك يا بشمهندس عصام انا دلوقتى قاهد بزاكر الحلقه ولكن فى نقطه تعبتنى ومش فاهمها وهى فى حاله المستخدم نسى يعمل dispose احنا بنستعمل finilazer وبنستدعى ال dispose ولكن ليه هنبعت false مش لو بعتنا كده مفيش اى كود هيتنفذ داخل الداله ؟؟؟ @@Metigator
بعد اذنك يا بشمهندس عصام انا دلوقتى قاهد بزاكر الحلقه ولكن فى نقطه تعبتنى ومش فاهمها وهى فى حاله المستخدم نسى يعمل dispose احنا بنستعمل finilazer وبنستدعى ال dispose ولكن ليه هنبعت false مش لو بعتنا كده مفيش اى كود هيتنفذ داخل الداله والمفروض نبعت true ؟؟؟
دعمنا بالتعليقات والإشتراك يعني الكثير ويعني أننا سنستمر في تقديم الأفضل
السلام عليكم استاذ سؤال يعني اي json file اقدر اتعامل معاه بهذه الطريقة httpclient ومن ثم dispose . وهل هذه معناها parsing . شكرا لك
@@aytech6867 json file تتعامل معاه باكثر من طريقة ولكن stream i/o الافضل
اما اذا كلن الاستدعاء عن طريق http مثل الانترنت فنستخدم HttpClient
وعملية Parse هي تحويل البيانات التى على شكل json الى object بداخل الذاكرة
سِالُمٌ الُحُالُمٌيَ من اليمن الف شكر الك
هاي المشاهدة الاول ولقيت شوية صعوبة في dispose وجزئية الusing تتحول ل try بس يلزمني اعيده مرة واثنين لحتى استوعبه بالكامل .. فيما عاد ا هذا الدرس كان جمييييل جدا ...ألف شكر
والله عالمي ف تفاصيلك ي دنجرس على صناع المحتوى
والله يا بشمهندس محاضره فوق الممتازه.. جزاك الله خيرا.. وفعلا أول مره أعرف إن using بتتحول ل try and catch..
❤
ربنا يبارك فيك محمد
أعظم سلسلة عربية تعليمية في البرمجة وعظمة على عظمة حفظك ربي وفي ميزان حسناتك يا باشمهندس
شرح ذكي ومختلف ذو مهاره عاليه لا يمتلكها الكثير كتسليط ضوء ساطع على المناطق المظلمه والمبهمه أمامنا خلال مسيرة تعلمنا جزاك الله خيرا على هذا المجهود الرائع مهندس عصام .
محاضرة ممتازة جزاك الله خيرا From Tunisia
ربنا يكرمك .. مجهود ممتاز و الله يا باشمهندس عصام و من افضل القنوات العربيه اللي شرحت سي شارب بوضوح و بتفاصيل كمان ..
ايش هذا الابداع يارجل
شرح مفصل تفصيل ماشاء الله
والله اني استمتعت بالفيديو واستفدت جدا
صراحة لا أدري ما اقول، علم يوزن ذهبًا، تحضيرًا وإلقاءًا..
أقول هذا بعد اطلاعي على الفصل المتعلق بال Stream IO من كتاب C# in a nutshell، وما أظن المرء يمكن أن يزيد في التبسيط على ما جئت به!
جزاك الله خيرًا..
جميلة جدا، بالذات تقسيم و توضيح الأركيتكتشر من البداية، استمر
شرح قوي ومختلف و ذو مهاره عاليه ماشاء الله
بارك الله فيك اخي الحبيب
والله يا هندسة مجهود فوق العادي ربنا يباركلك
الله يبارك فيك مهندس عصام ويرزقك الصحة والعافية
جزاك الله عنا خير الجزاء..محتوي اكثر من رائع..ما رأيت مثله قط..ربنا يجعله في ميزان حضرتك
شرح رائع ومحتوي رائع و اسلوب قوي في توصيل المعلومه اي شكر ما يوقيك حقك جزاك الله خير الجزاء
بسم الله ما شاء الله لا قوة إلا بالله, الله يفتح عليك من علمه, حلقة فوق الممتازة ربنا يبارك لك, شرح جميل و رائع, جزاك الله خيراً
تسلم صديقي على الكلام الرائع والدعوات الخالصة من القلب شكرا لك
يعطيك ألف عافية ، شرح مفصل ومعلومات مهمة وبتزيد الخبرة
مهندسنا العظيم محتواك اكثر من رائع
ما شاء الله زادك الله من علمه ❤
ولله اول مرة بعرف using هي try catch كل الشكر الك ربنا يوفقك ويبارك فيك
شرح اكتر من ممتاز كالعادة...
جزاك الله خيرا ❤❤❤
جزاك الله كل الخير وعام جديد بعزيمة وهمة باذن الله
ربنا يباركلك يا هندسة🥰
دائماً موفق بارك الله لك
يعطيك العافيه أستاذي الغالي الحمدلله فهمت الدرس كامل
بارك الله فيك
من الاعماق شكرا جزيلا
مبدع بأمانة
حلقة دسمة جدا😂♥
شكرا مهندس عصام
محاضرة جميلة الله يوفقك وياليت شرح التعامل مع الصور
شكرا لمرورك اخي الكريم، ان شاء الله في قادم الايام سيكون هناك موضوع يغطي هذه الامور
جزاك الله خيراً كثيرا
جزاكم الله خيرا .. ربنا يزيدك من فضله وعلمه
بارك الله فيك وبمجهودك .. ما شاء الله افضل شرح ومحتوى عربي .. جزاك الله خيرا
شكرا مهندس عصام
تسلمي مريم
الله يعطيك العافية ويكتب اجرك
اللهم امين، اجمعين
بارك الله فيك استاذ عصام
المحاضره جميله ربنا يبارك ف حضرتك ويزيدك علم
شكرا يبشمهندس
ربنا يكرمك
الله يعطيك ألف عافيه ويجعله في ميزان حسناتك
لا يوجد كلمات للوصف ماشاءالله عليك باش مهندس
جزاك الله خيرا
ما شاء الله تبارك الرحمن تابع بارك الله فيك ❤❤❤❤❤❤❤❤❤❤❤❤❤❤
ربنا يباركلك يا هندسه احسن حاجه ترجمه حضرتك لكلمات زى disposable بتقطع نص المشوار فى فهم السياق احنا مفتدقين ده جدا
محاضرة ممتازة
شكرا يا بشمهندس
محاضره ممتعه جدا و وبالنسبه اللي ما كانت صعبه لاني كنت بكتب على ورقه وقلم كل الشرح وطبقت معك الكود !
وانا انبسطت على الusing لانو هاي معلومه خفيه وان شاء انها من علامات القوه عندي رح تصير
جزاك الله خيرا دكتورنا
ربنا يجزيك كل خير على مجهودك ياباشمهندس
كل حلقة معاك بنحب السي شارب اكتر ❤❤
ما شاء الله الشرح بيرفكت❤
جزاك الله خيرا في الدقيقة 1:14:06 لغرض قراءة الملف موجود (Console.WriteLine(sr.ReadToEnd()); (methode ReadToEnd
الدرس ده تحفة ومعلومات قيمة جدا 😍😍
الدروس اللي قبلها كانت مزعلاني , رجعت انبسط تاني بعد هيك الحلقة 😂😂😂
ليه مزعلاك؟
@@Metigator
توهت شوية في ال reflection , attributes
بس هرجعلها تاني ازاكرها
شكرا علي السوال وعلي الدروس القيمة ونقل الخبرة الكبيرة اللي عند حضرتك ♥♥
بالعكس انا بأخذ كل كلمة يقولها بعين الاعتبار لان خبرته كافية لجذب انتباه المتعلم
ربنا يكرمك
I RESPECT YOU BRO
❤❤ جزاك الله خير الجزاء
Chokran
جزاك الله
بارك الله فيك مهندس عصام شرح رائع وجعله الله في ميزان حسناتك ومن تحب
لكن لدي ملاحظة لو سمحت لي.. حضرتك خلال الشرح وضحت انو httpClient هو الاوبجكت الذي يحتوي على unmanaged كود ينفذ مباشرة الى لغة الآلة ولا يمر حسب التسلسل من مترجم اللغة ثم IL وصولا الى CLR فلذلك لا تراه ولا تتعامل معه جامعة النفايات GC
والاوبجكت الحالي currencyService هو ال managed كود أي يترجم من الكود المصدري الى IL ثم CLR وهنا تستطيع جامعة النفايات تنظيفه من الميموري بشكل ضمني عند الانتهاء منه عندما تقوم بعملها
فالملاحظة انك عندما قمت ببناء الميثود المحمية الافتراضية اي المرئية من قبل نفس الكلاس ومن الانواع التي سترث من هذا الكلاس ويمكنهم الهيمنة والتعديل عليها
dispose (bool disposing)
اذا كان disposing : true
حضرتك اعتبرت انو () httpClient.dispose
هي عملية تنظيف managed كود على الرغم من ذكرك بأن httpClient هي من تحتوي unmanaged كود ..
واعتبرت الكود خارج جملة ال if
هو عملية تنظيف unmanaged كود وتنظيف ال larg fields على الرغم من ان هذا التنظيف يكون للاوبجكت الحالي currencyService وهو حسب شرحك يعتبر managed كود ...
☆ حسب فهمي المتواضع الا يفترض ان تكون هذه ال() httpClient.dispose
هي تنظيف ال unmanaged كود
والكود الذي يليها هو تنظيف managed كود وال larg fields .... ثم انك لم تكتب اي كود بهذا الخصوص فهل ينفذ ضمنيا ؟
☆ قد اكون لم افهم الصورة بالشكل الصحيح واعذرني على الاطالة وشكرا ☆
انا أشكرك أخي أحمد وجزاك الله خيرا لطرح هذا السؤال المركز ووضوحه الممتاز.
كل كلمة انت كتبتها هي اللي بقيت بعقلي وتساؤلات كثيرة حول هذا الموضوع
هل حصلت على جواب ام لا واذا حصلت عليه شاركني اياه
@@sky-soft-2024
العفو اخي العزيز ...
▪︎ لم أحصل على الاجابة بعد لانني صراحة لم ابحث في الموضوع ووضعته للمراجعة لاحقا لانني اريد الاستزادة في هذا الجانب .. طبعا الاستاذ عصام يقدم محتوى رائع ويعطي من وقته وربما لم يرى السؤال وهذا وارد .
▪︎ حتى هذه اللحظة اعتقد انها سقطت سهوا من المهندس والاستاذ عصام اي خانه التعبير أو لم افهم الصورة بالشكل المطلوب ونحتاج البحث اكثر في هذا الباب
لانني لم ابحث بعد واشعر بنقص معين لدي والصورة ليست مكتملة وواجبنا البحث...
وهناك تساؤلات مختلفة تدور في عقلي احيانا واعتقد نابعة عن حب التعلم الصحيح وأسال الله التوفيق لي ولك اخي وللجميع
كل الاحترام
@@ahmadalsibakhi2079
أولاً
أشكرك على الرد أخي أحمد
ثانياً
كلامك جعلني مرتاح بأن هناك شخص في نفس المجال وفي نفس المسار بالتحديد وتفكيره وتساؤلاته هي بالضبط مثل تساؤلاتي
ثالثا
مثل ما انت قلت ربما المهندس عصام لم يرى السؤال او لم يجد الوقت اللازم للرد.
وسؤال أخير ربما قد شغلتك عن أعمالك اخي احمد هل أكملت سلسلة #C؟
هل وجدت الاجابه ؟؟؟
@@sky-soft-2024
@@andoriamoha8087
لا
الله يباركلك
good luck
ال httpClient is a manage object لكنه لما بيعمل request وبيفتح connection ويجيبلك مصادر من علي الانترنت من المصادر دي الي بتكون
unmanaged resources الي بسببها بن implement ال IDisposable علشان ننضفهم
لما disposing كان true المفروض يلغي المصادر managed و unmanaged , في الكود معمول ال managed , فين ال logic بالظبط بتاع ال unmanaged?
طب ما استخدم ال destructor من الاول و خلاص يمسح unmanaged و ككده كده ال garbge هيمسح ال managed مع شويه validition لتجنب ال nullExcpetition و تمام اوي كده 22:15
thank you so much
interesting
Perfection!
Thank you !!
when sending false to dispose in the finalizer u said if he reach to this part (destructor) the it for sure has disposed the 'managed code', I did not understand why is that because if he called the dispose method then the GC.suppressFinlizer has already canceled the calling of the finlizer
can u explain this part please
The Finalize method, also known as the finalizer, is typically called by the garbage collector. It's essentially the last chance to clean up any resources. When you explicitly call Dispose, you're supposed to manage those resources yourself, alright? You're in control.
Now, if you're calling Dispose and then using GC.SuppressFinalize(this), you're essentially telling the garbage collector, "Hey, don't bother with the finalizer, I've got this." That's why the finalizer doesn't need to dispose of managed resources if it's reached. If it does get invoked, that means Dispose wasn't called, and now the finalizer has to clean up unmanaged resources. You don't send false to Dispose from the finalizer to avoid double-cleaning of managed resources, because by the time you're in the finalizer, managed resources should have been dealt with or are already out of scope.
thank you for take time and effort to respond I really appreciate that
I think I havent demonstrate my question right
we have the managed resources where the only way to clean those rescourses are by calling the method Dispose right?
so when you call the Dispose method you have alread cleaned the managed rescourses so when this happens you call the GC to tell it that u dont need to clean this object that has the managed rescourses because I already did [GC.SuppressFinalize(this)]
the problem is whats next:
when the user did not cleaned the managed rescourses then he for sure hasnt call the method Dispose therefor he did not tell the GC to not call the finalizer
so naturally the GC will call the Dispose method (because its in the finalizer body) so now knowing that the user did not clean the managed code why did we send false to the Dispose method in the finalizer after knowing for sure that the user did not call the Dispose method therefor the managed rescourses are not disposed yet
I hope u understood me now🤍
@@Metigator
@@mustafahaider9115
The reason you send false in Dispose(false) when called from a finalizer is that the finalizer is meant to release unmanaged resources, NOT managed resources. Why? Because by the time the finalizer runs, there's no guarantee that the managed resources are still in a state where you can safely interact with them. Trying to dispose of managed resources from the finalizer can lead to unpredictable behavior because other finalizers might have already run, affecting those resources. It could be a mess.
So, while your question attempts to point out a supposed "problem" the real problem would be attempting to dispose of managed resources from a finalizer. And that's why it's designed this way. There, I've clarified it for you again. You're welcome.
I am really grateful to have u as my teacher, thank you so much for answering my quastion🤍@@Metigator
gooooooood
Thanks!!
جزاك الله عني كل خير استاذي الوقت الذي اعمل فية اي تعليق هو وقت اكمل المقطع. الله يحفظك ويحميك ويسعدك استاذي من بعد اذنك اذا فية معك رابط تدريبات مكثفة للذي بنتعلمة في الplaylist ممكن تقل لي علية . ولك خالص الدعاء والشكر حفظك الله ورعاك استاذي
جزيل الشكر لك استاذ، لكن يوجد سؤال بعد ما ارسلت ال false ك arg لل protected dispose ، كيف سيعرف الكلاس اني اريد تنظيف ال unmanaged فقط و انا لم اقم ببناء اي شيء بخصوص حالة ال false, نحن في الكود فقط فندنا حالة ال true ،هل هو ضمناً سيفهم في تلك الحالة؟؟
سواء true or false سوف ينظف الunmanaged resources
فقط اذا كانت true سوف ينظف ال managed resources معها
كيف نفع اني اعمل length of array of byte واديلها حجم والحجم ده long ،،،،،، المفروض ال byte بيشيل من صفر ٢٥٥ ازاي نفع؟؟
اكثر من ساعة من المعلومات الجديدة والكثيفة 🤍
ما شاء الله محاضرة في القمة ربي يجعلها في ميزان حسناتك
استاذ أريد فقط سؤالك عن اذا ممكن تعمل لنا فيديو عن كيفية deployment المشروع عند العميل ؟ و كيف يتم Build Project في المشاريع الكبيرة هل في كل مرة بيضيفوا خاصية جديد يعملوا Build المشروع كامل ؟
ان شاء الله
شكرا ليك علي كل ما تقدمه لنا دايما يعطيك العافيه ويعوضك الخير دايما ♥..سوالي في الدقيقه 40 والثانيه 18 لو انا استخدمت using وكان فيه مشكله في url هيعمل exception فهل يفضل في الحاله ديه استخدم try , catch شكرا ليك
❤️❤️❤️
شرح جميل جدا يا بشمهندس ما شاء الله
وعندي طلب صغير لو ممكن حضرتك ترشحلنا اكواد نقرا فيها بعد منخلص ال playlists بحيث نقيس فهمنا لمفاهيم ال C# بشكل كويس عشان ننقل عالخطوه الجايه وتكون مناسبه لل begginers اللي زي حالاتنا لاني كل مبخش على اكواد من جيتهاب بلاقيهم مدخلين اكواد تبع linq و حاجات تبع windows forms و entity framework فمش عارف اجيب حاجه مناسبه لمستوانا نقرا فيها فلو ممكن حضرتك تساعدنا وربنا يكرمك ويجازيك خير
github/stackoverflow
شوف الأسئلة واقرأ الأجوبة
♥♥♥♥♥♥♥♥
اسهل من شرب الماء
I really appreciate your hard work,thank you
I just have a question
When i write a code after watching vedio
in the finalizer , i called this.Dispose() , because if it reachs to call finalizer ,that means i didn't dispose unmanned code , i don't get it why you call Dispose (false)
Could you explain it for me
Calling Dispose in the finalizer to signal that you're only interested in releasing unmanaged resources. The false parameter typically means, "Hey, just deal with the unmanaged stuff because the managed resources will be taken care of by the garbage collector eventually
أنت غير
إستمر أخي👍
ربنا يجازي حضرتك خير يارب♥عندي سؤال .. هل عدم معرفتي ب operating systems و networking >> يأثر علي التطبيقات اللي بعملها (معرفش اعلمهم يعني ) ؟!!
معرفتهم ضرورية وبتوسع العيون واحنا بنعمل التطبيق
وفي وقت التعلم لا باس من تاجيلها ولكن اجلا ام عاجلا احتاج تغطية الاساسيات فقط.
من بعد ال dispose وانا مش فاهم حاجه و حاسس في مصطلحات جديده مش اتشرحت قبل كده
انت وحش يا استاذ
شكرا اخي
JIT
؟؟عباره عن كومبيلر ولا انتربرتر
سمعت شخص بيقول انه انتربرتر
حسب اللغة اولا واخيرا
وفي الدوت نت هو
Compiler
------- Official documentation -----------
Compiling MSIL to native code.
At execution time, a just-in-time (JIT) compiler translates the MSIL into native code. During this compilation, code must pass a verification process that examines the MSIL and metadata to find out whether the code can be determined to be type safe.
جزاك الله خير@@Metigator
بعد اذنك يا بشمهندس عصام انا دلوقتى قاهد بزاكر الحلقه ولكن فى نقطه تعبتنى ومش فاهمها وهى
فى حاله المستخدم نسى يعمل
dispose
احنا بنستعمل
finilazer
وبنستدعى ال
dispose
ولكن ليه هنبعت
false
مش لو بعتنا كده مفيش اى كود هيتنفذ داخل الداله ؟؟؟
@@Metigator
بعد اذنك يا بشمهندس عصام انا دلوقتى قاهد بزاكر الحلقه ولكن فى نقطه تعبتنى ومش فاهمها وهى
فى حاله المستخدم نسى يعمل
dispose
احنا بنستعمل
finilazer
وبنستدعى ال
dispose
ولكن ليه هنبعت
false
مش لو بعتنا كده مفيش اى كود هيتنفذ داخل الداله والمفروض نبعت
true
؟؟؟
الى فهمته انه ضمنيا بيتم حذف الموارد الغير قابله للاداره عن طريق نظام التشغيل ولكن الافضل اننا نستعمل despose
هل هذا صحيح
جزاك الله كل خير و لاكن سامحنى فى شغلة ان تمثيل ال 65 هو 10000010 و ليس كما فى اللفيديو بعتقد يعنى و ممكن تصححلى المعلومة لو انا غلطان
هل هي مذكورة بهذا الشكل في هذا الدرس
الله يبارك فيك مهندس عصام ويرزقك الصحة والعافية
جزاك الله خيرا
بارك الله فيك
thanks so much
❤❤❤❤
جزاك الله كل الخير
جزاك الله خيراً
جزاك الله خيرا
جزاك الله خيرا