I have an arraylist of class objects and the class contains unmanaged
resources. When I remove an item from the arraylist using the .remove or
..removeat method, will the object's dispose method be called automatically or
do I have to call it before removing it from the ArrayList?
--
Dennis in Houston 7 1791
On 2005-07-27, Dennis <De****@discuss ions.microsoft. com> wrote: I have an arraylist of class objects and the class contains unmanaged resources. When I remove an item from the arraylist using the .remove or .removeat method, will the object's dispose method be called automatically or do I have to call it before removing it from the ArrayList?
Nope... In this case, you might want your collection to be inherit from
System.Collecti ons.CollectionB ase. Then, in your subclass, override
it's OnRemoveComplet e method.
--
Tom Shelton [MVP]
Hi, Tom. Is there a way to put a break point on dispose class (wherever that
is on the dotNET framework) to see whenever VB is calling it or not?
"Tom Shelton" wrote: On 2005-07-27, Dennis <De****@discuss ions.microsoft. com> wrote: I have an arraylist of class objects and the class contains unmanaged resources. When I remove an item from the arraylist using the .remove or .removeat method, will the object's dispose method be called automatically or do I have to call it before removing it from the ArrayList?
Nope... In this case, you might want your collection to be inherit from System.Collecti ons.CollectionB ase. Then, in your subclass, override it's OnRemoveComplet e method.
-- Tom Shelton [MVP]
On 2005-07-27, Ben <Be*@discussion s.microsoft.com > wrote: Hi, Tom. Is there a way to put a break point on dispose class (wherever that is on the dotNET framework) to see whenever VB is calling it or not?
Well that depends... Dispose is a method of the IDisposable interface,
so if it's your class and you have implemented dispose, sure you can put
a break in it. If it isn't then that is a little more difficult :)
But, removing an object won't call dispose. You won't have the
reference any more, so it will get it's Finalize method called at the
next GC - but that's probably not what you want. Like I said, the
easiest way to do what you want is to create a class that inherits from
CollectionBase and then override it's OnRemoveComplet e method.
--
Tom Shelton [MVP]
Dennis,
20% of the classes of dotnet implements directly IDisposable because of the
fact that they inherit from componentmodel, those are probably 80% of the
classes you normally use.
In those you don't normally have to worry about Dispose. (That is as well
the reason that those classes have a dispose method. The same as all classes
have a ToString and GetType method because all classes inherits from Object)
It is up to you if you use that GetType in your program. http://msdn.microsoft.com/library/de...mberstopic.asp
I hope this helps,
Cor
Thanks for the answer. If I understand it correctly, I can just let Finalize
and GC to the work or implement my own arraylist class using the
CollectionBase Class as my base class if I have unmanaged resources to
dispose of.
--
Dennis in Houston
"Cor Ligthert [MVP]" wrote: Dennis,
20% of the classes of dotnet implements directly IDisposable because of the fact that they inherit from componentmodel, those are probably 80% of the classes you normally use.
In those you don't normally have to worry about Dispose. (That is as well the reason that those classes have a dispose method. The same as all classes have a ToString and GetType method because all classes inherits from Object) It is up to you if you use that GetType in your program.
http://msdn.microsoft.com/library/de...mberstopic.asp
I hope this helps,
Cor
On 2005-07-27, Dennis <De****@discuss ions.microsoft. com> wrote: Thanks for the answer. If I understand it correctly, I can just let Finalize and GC to the work or implement my own arraylist class using the CollectionBase Class as my base class if I have unmanaged resources to dispose of.
Pretty much...
--
Tom Shelton [MVP]
Dennis,
As addition, you can open a component instead of a class or a form.
You get than a complete template.
I hope this helps,
Cor This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics |
by: Steven |
last post by:
Hello,
In my asp.net application, I have the MainForm.aspx.cs (where all the
functions are defined) and ClasssificationInfo.cs class. This is the
Classification Info class --
using System;
using System.Xml.Serialization ;
namespace MyAppl
|
by: godsella |
last post by:
First i have two stored procedures, i have passed the values of each
one into two different arraylists of dates. how can i compare the two
arraylists of dates?
Thanks in advance
|
by: Morten Hauge |
last post by:
Hi!
I have a problem, I'm not sure if this is the proper way to do it, but I
have the following scenario:
I want to list all categories, and all products in that category whenever I
select a topcategory in a menu.
Example:
- Music
|
by: drdave |
last post by:
I would like to have ten arraylists created within a loop.. is there a
conversion or something I can do to acheive this..
pseudo:
Dim counter As Integer = 0
Dim ArrName As ArrayList
'******** LOOP OVER THE VALUES ********************
|
by: steve |
last post by:
I'm looking for a code example how to compare the values in a given record in different arraylists
two arraylists, two fields in each record, both defined as string
I'm thinking that it's something like
If ((fieldname)array1(x)) == ((fieldname)array2(x)) Then do something, where x is an integer used for the index/record or possibly
| |
by: steve |
last post by:
I need to compare the value of a field in a row on an arraylist with the value of a field on a second arraylist
I have this bit of code working for arrays but cant get it working for arraylists
The secone argument here (1) represents the second field in the row, with arraylists I get a message saying to many arguments.
Can I do this with...
|
by: Andy in S. Jersey |
last post by:
I would like to create an unknown number of Arraylists, meaning, I don't know
how many I should create until runtime.
I will be reading a table, and 0,1,2, or more fields have to be put into
individual ArrayLists.
How do I create an unknown number of ArrayLists?
Right now I put all the values into one ArrayList. I know how many fields...
|
by: Newbie19 |
last post by:
I'm just learning java arrays/arraylists and was wondering what are the best books for learning java arrays/arraylists?
I know practice is the best way to learn, but I have a hard time remembering the little items on arrays/arraylists.
Thanks,
Newbie
|
by: =?Utf-8?B?Sm9zaFA=?= |
last post by:
Hi All, I am attempting to compare values in two arraylists to make sure all
the values are the same. I am running into trouble with my code if both
arraylists compare okay up until a point and I am looping using the length of
the primary arraylist. For example:
oApproved (3 elements here):
Red
Green
Yellow
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it.
First, let's disable language...
| |
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed.
This is as boiled down as I can make it. ...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then...
|
by: isladogs |
last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM).
In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules.
He will explain when you may want to use classes...
|
by: conductexam |
last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one.
At the time of converting from word file to html my equations which are in the word document file was convert...
|
by: TSSRALBI |
last post by:
Hello
I'm a network technician in training and I need your help.
I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs.
The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols.
I succeeded, with both firewalls in...
| |
by: 6302768590 |
last post by:
Hai team
i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
| |