473,405 Members | 2,185 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,405 software developers and data experts.

.NET Internal Workings

I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?

Thanks
Howard
Jun 6 '06 #1
9 1308
My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?


Probably nothing significant.
Mattias

--
Mattias Sjögren [C# MVP] mattias @ mvps.org
http://www.msjogren.net/dotnet/ | http://www.dotnetinterop.com
Please reply only to the newsgroup.
Jun 6 '06 #2
Hi,

Nothing to lose the sleep for.
--
--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation

"Howard" <ho*******@yahoo.com> wrote in message
news:%2****************@TK2MSFTNGP03.phx.gbl...
I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?

Thanks
Howard

Jun 6 '06 #3
"Howard" <ho*******@yahoo.com> wrote in message
news:%2****************@TK2MSFTNGP03.phx.gbl...
I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?
It all gets JIT compiled the same either way.

Best: put only the minimal startup code in your .exe, so you can get going
as quickly as possible (put up a splash screen, start listening to sockets,
or whatever -- this is one legitimate reason for breaking/weakening
encapsulation). Although static constructors don't run until the code in
question is referenced, PEVerify has to analyze the whole assembly unit at
once. Put trusted code in a separate assembly, signed with strong name, and
use GAC, so that PEVerify won't have to run each time -- it caches results
and as long as the assembly isn't modified, it can skip reverification.
WIth unmanaged, use locality to help segment your application (code in the
same library should be used together, to minimize the working set)... I
don't know how this would apply to managed code -- because it gets JIT
compiled, it probably improves locality a lot.

Thanks
Howard

Jun 6 '06 #4
There must be a purpose to split the code. Are you following so of the
patterns here:
http://msdn.microsoft.com/practices/topics/patterns/

chanmm
"Howard" <ho*******@yahoo.com> wrote in message
news:%2****************@TK2MSFTNGP03.phx.gbl...
I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?

Thanks
Howard

Jun 6 '06 #5
It's all interpreted so not really any hit. If you want to improve
performance you'll need to see what is slow (coding technique wise) and
modify accordingly. Avoid using Object type if you can (especially in any
repetative tasks).

"Howard" <ho*******@yahoo.com> wrote in message
news:%2****************@TK2MSFTNGP03.phx.gbl...
I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?

Thanks
Howard

Jun 6 '06 #6
Do you know of any good articles on good and bad programming practices in
..NET and c#?

"Rob R. Ainscough" <ro*****@pacbell.net> wrote in message
news:O0**************@TK2MSFTNGP04.phx.gbl...
It's all interpreted so not really any hit. If you want to improve
performance you'll need to see what is slow (coding technique wise) and
modify accordingly. Avoid using Object type if you can (especially in any
repetative tasks).

"Howard" <ho*******@yahoo.com> wrote in message
news:%2****************@TK2MSFTNGP03.phx.gbl...
I've taken out a portion of my main code and put it in a seperate dll
libaray.

My question is would there be any performance hit by referencing a dll
library as suppose to all in one exe?

Thanks
Howard


Jun 6 '06 #7
Rob R. Ainscough <ro*****@pacbell.net> wrote:
It's all interpreted so not really any hit.
No, none of it is interpreted.

<snip>
Avoid using Object type if you can (especially in any
repetative tasks).


Care to go into details about that? I *suspect* you're suggesting that
excessive boxing/unboxing should be avoided, but it's not clear.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Jun 7 '06 #8
Jon,

Beside boxing do you see that often VB programmers take direct the object
for everything while there is no problem to use direct the right class,

They rely on the late building (reflection) method build inside VBNet.

Probably something that comes from VBS.

Cor

"Jon Skeet [C# MVP]" <sk***@pobox.com> schreef in bericht
news:MP************************@msnews.microsoft.c om...
Rob R. Ainscough <ro*****@pacbell.net> wrote:
It's all interpreted so not really any hit.


No, none of it is interpreted.

<snip>
Avoid using Object type if you can (especially in any
repetative tasks).


Care to go into details about that? I *suspect* you're suggesting that
excessive boxing/unboxing should be avoided, but it's not clear.

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too

Jun 7 '06 #9
Cor Ligthert [MVP] <no************@planet.nl> wrote:
Beside boxing do you see that often VB programmers take direct the object
for everything while there is no problem to use direct the right class,

They rely on the late building (reflection) method build inside VBNet.

Probably something that comes from VBS.


I'd say that's another reason to turn Option Strict On more than
anything else :)

--
Jon Skeet - <sk***@pobox.com>
http://www.pobox.com/~skeet Blog: http://www.msmvps.com/jon.skeet
If replying to the group, please do not mail me too
Jun 7 '06 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

8
by: Carlos J. Quintero | last post by:
Hi, As you know the current keywords "protected internal" (C#) or "Protected Friend" (VB.Net) means "Protected Or internal" (C#) or "Protected Or Friend" (VB.Net), that is, the member is...
1
by: Ayende Rahien | last post by:
reparing resources... Updating references... Performing main compilation... error CS0583: Internal Compiler Error (0xc0000005 at address 53168B12): likely culprit is 'BIND'. An internal...
4
by: David Sworder | last post by:
Consider the following line of code (it's not important what it does): resp.DocItem=Relations.SelectDocItems_BySearchString(req.SearchPhrase); It turns out that this line is in error. The...
2
by: Chien Lau | last post by:
I frequently define internal UserControl-derived classes in my WinForms apps: internal class MyUserControl:UserControl{ ... } I'll often need to embed these controls in a Form, whose class...
2
by: Kolozs, Ãron | last post by:
Hi everybody, The C# compiler reports a Compiler Error CS0052 in the following situation: I declared a type marked as "internal": namespace MyNamespace { internal class MyInteralClass
3
by: al.cpwn | last post by:
do static and inline functions or members have internal linkage? I have been reading this newsgroup on google and found conflicting ideas. Can someone please help me understand why in some places...
9
by: JT | last post by:
Here is the overall structure I will be referring to: End-program ProvideWorkFlow.dll Forms and methods that properly manipulate calls to methods in AccessUtils AccessUtils (a web service)...
1
by: digz | last post by:
Hi, The std::auto_ptr 14.4.2 in Stroustrup ,the book talks about "std::auto_pt_ref is to implement destructive copy semantics" , after some more search I found that auto_ptr can be returned from...
13
by: Clive Dixon | last post by:
I am refactoring some code to move some base classes into a separate assembly. One of these base classes has a member property which is 'protected internal'. However when I move these base classes...
9
by: dylan.miller | last post by:
I'm having trouble understanding the internal access modifier. There are many classes in my assembly that should not be accessible outside of the assembly. I've used the internal access modifier...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
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,...
0
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...
0
Oralloy
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,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
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,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.