C# - ASP.Net - Create An Application That Has The Potential To Be Very Performance Intensive
Jan 9, 2010
Until now, I have not create any massive applications using ASP.Net. However, I am looking to create an application that has the potential to be very performance intensive. So I am looking for some tools or best practices when it comes to performance. I would like to be able to know how to:
See my current performance (good or bad) View items that need fixing And being able to compare two performance variable items would be great as well.
I am trying to stop the following piece of code from taking up too much processing power of the PC by using threads. But I keep getting errors when I use threads:
I have a module which performs a database intensive process (moves records from the current database to another database) Sometimes it can take a few minutes to run.What is the best practice for providing my user with feedback on the process and the ability to try and cancel the operation?Currently I have recently converted the module to Class which raises events as it progresses. I load a form, declare the class, then call a routine in the class to run the process, receiving feedback in the top level form?
I am currently using following code to estimate the size of the textbox:
Dim i As Integer, j As Integer, pGr As Graphics, sz As SizeF For i = 1 To pNumRows For j = 1 To pWidth sb.Append("W") Next
[Code]...
I was wondering if there is any way to remove the for-loops and do away entirely with the pGr (textbox.CreateGraphics) method and still correctly estimate the size of the textbox.If you're wondering why I am (actually the person who wrote the code) is looping through all the 'W', it's because (I think) 'W' has the biggest width and height in the entire character set, so the person (who wrote the code) is trying to guess the maximum area needed.
Possible Duplicate: Memory leak in .net application I am working on a desktop application in VB.net 2005.The application contains a timer with an interval of 1 min. Each time the timer ticks, a set of functions gets executed, mostly database related. Initially the application runs fine. In processes(Task manager) the cpu usage goes to 100% every time the timer is invoked. But the timespan is around 1 sec(negligible). However as the time passes and after around 20 hours the time span of timer_tick increases to something like 20-30 secs. In this period cpu usage is 100% and the application does not responds.Gradually the time span of timer_tick increases to 1 min and the cpu uses gets stuck to 100% and the application does not responds. All objects are properly disposed. Moreover, this issue is with pentium 4 processors. The application runs fine on core 2 duo.I am using DevEx controls in my application.The program runs fine with less records in database.I have run the CLR Profiler. The code seems to be fine.
In my VB application,I am copying huge amount of data using VB string?This results in performance issue.What shoul I use in place of VB string to improve performance?
I have single-thread windows form application written with VB.NET and targeting Framework 1.1. The software communicates with external boards through a serial interface, and it mainly consist of a state machine that run some tests, driven in a loop done with a Timer and an Interval of 50ms. The feedback on the user interface is done through some custom events raised during the tests.
The problem that is driving me crazy is that the performance slightly decrease over time, and in particular after 1200/1300 test operations. The memory occupied does not increase over time, it is only the CPU that seems interested by this problem. The strange thing is that, targeting framework 2.0 and using the same identical code, I do not have this problem.
I know that is difficult without looking at the code, but do you have suggestions how can I approach the problem? EDIT: I am really lost, after a couple of intensive work the application starts slowing down. The selected row is related to its process, if it could help.
EDIT2: Using the Windows Task Manager I detected that the Handles counter is increased by 1 at the end of each operation. I don't know if it is the cause but the application starts to slow down when the handles counter reaches about 1500 handles. I checked that all necessary RemoveHandler are called after each operation. Any idea?
EDIT3: I found that the handles problem is generated by the C++ library we are using to communicated with the serial device. It then happens both in .NET 1.1 and .NET 2.0. The difference, and that's strange, is that if the target .NET 1.1 the application slow down/freeze instead for .NET 2.0 I reached more than 30000 handles without loosing performances. Now I don't know if the problem is really caused by this lost handles, I will try to ask to the developers of C++ library to correct the problem and see if it solves the problem I am having on .NET 1.1.
I'm using Visual studio 2008 and microsoft sapi in a forms application. I am using text to speech which works just fine however when the computer is speaking it "bricks" the application and the main ui is unresponsive until the computer is done talking then everything returns to normal. To counter this issue I tried using the background worker thread to establish the sapi on another thread however the form is still freezing when the computer speaks. I would like to note that at this point there is nothing on the form except a tabbed window and a few buttons the form is not performing any code what so ever other then the text to speech.
Stupid question, but how do I get access to this Explorer? To create a performance session for Windows client application:(1) Open the solution in the Visual Studio IDE. (2) On the Analyze menu, click Launch Performance Wizard.(3) From the Which of the following available targets would you like toprofile? drop-down list, select the name of the application that you wantto profile, and then click Next. You can add more binaries later
Currently I'm writing a VB.NET app and it's getting big, resulting in its become very slow.Is there any application (or plug in) that can test the performance in seconds?I mean, when I click a button and it displays a product, I want to know exactly how long it is gonna take.
my friend is currently development an application using SOA Architecture, He sent me a picture with a lot of layers (10 almost) and he is worried about performance issues, the application is development on VB.Net 2.0 & 3.5 (some libs).
I'm trying to weave a .NET performance counter into an application. When I call the incrementBy(value) method on my avg performance counter it is changing the RawValue of my base counter by value as well. I checked the variable names and think everything is correct. Then when I call increment() on my base counter it adds 1 to the rawvalue of the avgcounter as well as incrementing the base counter... adding insult to injury!
In code I'm using two different counters to measure the time a merge sort I wrote takes. I have a instantaneous counter for the elapsed time of the sort and an average counter. Dim timePiece As New Stopwatch() timePiece.Start() MergeSort() timePiece.Stop() [Code] .....
I think I may be using the counters wrong, but why does changing the rawvalue of the average seem to also change the rawvalue of the base? i dont think that's supposed to happen.
I've developed a VB.NET application with Visual Studio 2008. The application communicates with SQL Server and processes a text file.
My question is about performance. While I run it from Visual Studio 2008, it takes 3 sec to complete. The same is when I run the executable created by the Setup Wizard on my desktop (Windows XP sp 3). But if I run the executable installed on a Windows 2003 Server, it takes 15 sec to complete! What could be the reason of degrading performance on the server vs. the desktop? The .Net framework 3.5 SP1 is installed both on the desktop and the server.
I need to do this in the MDI: Generate Form1 to maximize the potential in MDI. And mdi form to generate second Form2 order has always been above Form1. When clicking on the form 1 form2 disappear under it. Normally, when you click on the form1 Form2 hides under it. All must appear in the MDI.
I am developing an application that runs on a network. It needs to contact to database (access database) very very often, which is stored in server. Around 30 Client computers contact the database almost every 2-3 seconds. I need to know could there be potential manifest problem in with the application? Could there will be a problem if database is being updated by one client, at the same time other client contacts it?
I've been having difficulties with a Win32Exception related to the Drawing.dll. After many man-hours of research and a couple creative attempts to work around it, I'm left with the likelihood that the cause of my angst rests with a .dll file provided by the vendor of the database against which I'm querying and through which I'm attempting to post updates. The vendor stated that the .dll wasn't designed with VB 2008 in mind. Though the .dll still posts the data, it's possible that something in its function is causing hiccups with the redrawing of my form and its associated treeview.
Stupid question, but how do I get access to this Explorer? The says: To create a performance session for Windows client application:
(1) Open the solution in the Visual Studio IDE.
(2) On the <B>Analyze</B> menu, click <B>Launch Performance Wizard</B>.
(3) From the <B>Which of the following available targets would you like to profile?</B> drop-down list, select the name of the application that you want to profile, and then click <B>Next</B>. You can add more binaries later.
(4) Accept the default Sampling profiling method, and then click Next.
(5) Click <B>Finish</B>.
Only problem is that there is no <B>Analyze</B> menu in the IDE.
I have that code running into a windows service and the service seem to have a memory leak, something is wrong for sure. After looking at the whole code, I think it might be inside one of these function but I cannot seem to find where it could be.
I've read that making a class sealed in C# is advisable in high-performance scenarios because it frees the compiler to make certain optimizations (e.g., inlining property getters) that it wouldn't be able to make otherwise. Is the same true for NotInheritable in VB.NET?
I have a class with a static list of keys, and I have a static method called Remove() that removes a key from that list.Now what I understand from the contracts post conditions is that as the programmer of the class, I guarantee that the current public method does something specific, in this case : removing the element of the list.
Here's what I've written:
private static List<Keys> m_usedKeys; // private list of keys public static void Remove(Keys _key) {
[code]....
What I'm trying to "Ensure" here, is that the Remove() method removes the key for real from the list (Yes this might be a trivial example, but I get the error there.)when I write the Contract.Ensures() line, VS2010 gives me the following error :
Error 3 Detected expression statement evaluated for potential side-effect in contracts of method 'LibJungleTimer.KeyBind.Remove(System.Windows.Forms.Keys)'. (Did you mean to put the expression into a Requires, Ensures, or Invariant call?) C:UsersJoelDocumentsProgrammationJTJungleTimerLibJungleTimerKeyBind.cs 51
I think this error says that the expression m_usedKeys.remove(_key); has a potential side-effect. In fact, it has a side-effect, it removes a key from the list!If I try to write something like this instead :
Hello I want to create a windows form application program that can create games something like Gamemaker or Klik & Play (butt less advanced) with D&D "Drag and Drop" events and actions.
I understand this is possible but I am not sure where to start. I want to either buy or create an application that captures a resource from another application so that I can fire off another application. In other words, I want to start an application (which I did not write) that is database driven so the form has a number of text boxes. When someone keys something into that field I want to be able to validate the value, outside of the original application. For instance, if the program asks for a zipcode and it doesn't validate the zipcode, I'd like to trap for that and write something that would validate it. At this point I don't think I'd have to send anything back to the textbox/resource.
I am unsure about how to go at this, what I want is to create an application that can connect to others using that application. Things such as if I change something on the forum it will be changed on someone else who is looking at the forum, granted it would be a specific person who i am connecting with,
I want to create a web application where I can read and write data into MS SQL data base or an .MDB file (for testing), pls guide me what should be the mean of connectivity to database? ADO /ADODB /OLEDB
I'm working on a project with regard to college. I have been assigned the task to create GUI for a telecom related software.My task is to create a GUI for that application. My job is to create a GUI in VB.NET. My program has to remotely connect to a Linux system and execute a program there. All this has to happen in the background when my user clicks a button on my program. My program must be written on the windows system. I have consulted some people and they suggest the use of Remote procedure calls. But i don't knowhow to implement this in VB.NET. Please give me some tutorials,etc.
Anyone know how I would go about implementing a UI that's very customized, something like this? (Programming in VB.net right now if it matters). Have yet to deviate from the standard windows form look but I've got a project which I would like to visually style out how I want.