Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

what is single thread and multithread apartments model?

Answer Posted / gabriel

Single Thread model is the one that you run all the process
in only one thread, this thread is the "main" thread (and
the only one) and corresponds with the "main" of your
source code.

Multi-threading model, is the one that can run (let's say 4
process) two of them in the main thread and the other two
in other thread created by the main thread. Main thread can
creat as many threads as you want (with the right code of
course and the right cautions!) you need two more
conditions to have a REAL multithreading, is not enough for
you to code this, you also need a real multitasking
operative system, and a more than one processor.

Today with the DUAL CORE you could run one process in one
core and other in the other core, this is "almost" true,
because although you could code the right code, and you
have DUAL CORE, operative system (Win) will try to have
control over the execution threads, and ...althought you
code in C++ and you can use the AFFINITY property (which is
not in other languages) to set the affinity of a process to
a core... win always reserves the right to change the order
of execution....so? what happens?

Easy.... you have two or more threads, may be win decides
your process aren't important enough to respect your
affinity so, your threads will run in one core (is 'almost'
the same to have a single core processor, but not the same
because are lot of process running on the other core making
the core you get, less busy) so, actually will happen
this... the core that runs your threads will give to each
thread a "piece of time to run" so will "emulate a
multitasking" and sad but true, your multithreading looses
about 50% of importance to exist, but you still have other
advantages.

If you try a dumb code as writing a letter (eg "Z") on one
thread and (eg "Y) on the other, and you don't have a dual
core, or your affinity is not set, or even taken in
account, then you would see something like this

ZZZZZYYYYYYZZZZZZZYYYYZYZZZZZYYYYYYYZZZZZZYYY

Because the processor is iterating between threads and
given each a piece of time to execute.

Is This Answer Correct ?    2 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is OLEDB?

2011


What is the use of Visual Basic Document file?

2343


___ VB constant make the menu item in centre.

1779


Are there any examples of commercial applications built using Visual Basic?

1732


What is ODBC Direct and Microsoft Jet Database Engine ?

2481


which method used to move a recordset pointer in nth position in DAG?

2057


How do I make my applications screen-resolution independent?

1508


Explain what is Visual basic?

1011


How come I get a "No Current Record" error when I use a a Data Control on an empty table?

1527


Is it possible to Manipulate data through flexgrid? Explain.

1982


How would you create properties in ActiveX Control?

1991


How would you create Visual basic Document file?

2629


Which language is used in visual basic?

1026


What is FireHouse Cursors?

2287


When/Why should I use Option Explicit?

1496