![]() |
|
شرح الكووووووووود - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم مكتبة اكواد VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=185) +--- الموضوع : شرح الكووووووووود (/showthread.php?tid=18503) |
شرح الكووووووووود - anis_derna - 20-12-16 لو تكرمت ان تشرح لي هذا الكود و الادوات المستخدمة Private Shared Sub __ENCAddToList(ByVal value As Object) Dim list As List(Of WeakReference) = Form18.__ENCList SyncLock list If (Form18.__ENCList.Count = Form18.__ENCList.Capacity) Then Dim index As Integer = 0 Dim num3 As Integer = (Form18.__ENCList.Count - 1) Dim i As Integer = 0 Do While (i <= num3) Dim reference As WeakReference = Form18.__ENCList.Item(i) If reference.IsAlive Then If (i <> index) Then Form18.__ENCList.Item(index) = Form18.__ENCList.Item(i) End If index += 1 End If i += 1 Loop Form18.__ENCList.RemoveRange(index, (Form18.__ENCList.Count - index)) Form18.__ENCList.Capacity = Form18.__ENCList.Count End If Form18.__ENCList.Add(New WeakReference(RuntimeHelpers.GetObjectValue(value))) End SyncLock End Sub RE: شرح الكووووووووود - محمد كريّم - 20-12-16 يا انيس انت جايب الكود من decompiler والا انا غالط ؟ على كل حال الموضوع متعلق شوية بالـ threading لازم تقرا عليه وتفهمه وتقرا المواضيع اللي حطيتلك روابطها وبعدين تفهم الكود والكود مافيشي ادوات الا Form18 والباقي list و integers SyncLock Statement https://msdn.microsoft.com/en-us/library/3a86s51t.aspx WeakReference Class https://msdn.microsoft.com/en-us/library/system.weakreference(v=vs.110).aspx WeakReference.IsAlive Property https://msdn.microsoft.com/en-us/library/system.weakreference.isalive(v=vs.110).aspx RuntimeHelpers.GetObjectValue Method https://msdn.microsoft.com/en-us/library/hh400378.aspx |