Stephane Richard <[log in to unmask]> writes:
> Hello again everyone,
> I am trying to decide between to different designs that will accomplish
> the same task. And I was just wondering if it was possible (or even
> recommended) to do.
> Here's the situation via an example:
> - I wish to have a wrapper object that will manage a linked list of data.
> - I have an object that will need to call upong the Wrapper object's
> methods to insert, delete and manipulate data inside that linked list.
> - I have another object that will need to take the contents of the wrapper
> object's linked list and process them.
> - Finally I have another object that will need to take the processed
> linked list and send it say to a serial port.
All fairly clear, if high level.
> In essense, I'm assuming I can do this be either declaring 3 dlls
> for each of those objects plus the dll for the wrapper object with
> the linked list making the methods open to the outside world.
Why a dll? Why not just a package? Are the "objects" not written in Ada?
> Or I can declare a bunch of Tasks that could potentially be a task
> for each of the jobs I need done on the linked lists and execute
> them asynchroneously in a controlled environment.
Tasks are for asynchronous events. Packages are for defining objects.
You have not described any asynchronous events, so tasks are not
> Only 2 criteria for making this decision.
> 1. I would like the most speed possible.
> 2. The most reliable possible.
Write everything in Ada, link them all into one executable. Use
packages with tagged types to define objects.
> Which method would you recommend?
For an example linked list, see my web page: