VB5 app increasing sluggish as day goes on

  • Thread starter Thread starter JDorn
  • Start date Start date
J

JDorn

I have developed a VB (VB5) application that runs against an Access
database. The Access db is split, with one containing all the SQL and
the other strictly Data. The application is running into a few
problems -

- After a few hours, the application become sluggish
- Occasional record locks are experienced between users

Here is the basic setup:

VB5 application made up of a MDI parent and up to 6 children on XP or
W2K PCs. A Jet workspace is opened and a DAO database is opened
within the workspace. When the application is closed, both database
and workspace objects are closed
Question 1: Since no transactional processing is performed, do I even
need a workspace?

- All querydefs and recordsets are opened, read, and immediately
closed. A recordset containing only the record being edited is kept
open longer than that.
Question 2: Which is more efficient object.Close or Set object =
Nothing? I read that Set = Nothing releases memory, but nothing
similiar on Close.

- Users create a report numerous times during the day. The app
builds an html file and does a shell command to open the file in IE.
Question 3: How do I simply refresh the IE display once they have
opened a report? This would prevent them from having numerous
(typically 5-7) instances of IE running

- When one user is viewing a set of records in a listview and another
attempts to edit one of those same records, the 2nd user get a record
lock notification. The first user does not have any record open for
edit ... that I can find.
Advice : What I should be looking for?

Additional Info: App uses @ 12,000k memory and a large number of
ccrp combo boxes (if that makes any impact).

Databases are sitting on a new Win 2000 Server, no other applications
are currently running on the server.

The last user that logs in to the app gets the worst performance.

Any tips / tricks / references would be appreciated!

- Jon
 
- After a few hours, the application become sluggish
- Occasional record locks are experienced between users

Here is the basic setup:
- snip -
Question 2: Which is more efficient object.Close or Set object =
Nothing? I read that Set = Nothing releases memory, but nothing
similiar on Close.

You need both:

Recordset.Close
Set Recordset = Nothing
- When one user is viewing a set of records in a listview and another
attempts to edit one of those same records, the 2nd user get a record
lock notification. The first user does not have any record open for
edit ... that I can find.
Advice : What I should be looking for?

Try to avoid conention where several users are looking at the same
data rows. Failing that, see if there's a way to read the data and
cache it locally.
Databases are sitting on a new Win 2000 Server, no other applications
are currently running on the server.

Since it's being used as a file server, the server will have less
impact than higher network speed, I think. But I don't know the
specifics of your setup.
_______________________
Michael B. Johnson
 
I am going out on a limb here:

If an application/computer gets slower as the day moves on I would think it
might be a heat issue. If a computer starts to heat up it doesn't run well.

I had a problem like this once before and we found out that the fan on the
computer wasn't plugged in! We plugged in the fan and the
computer/application worked fine.

Just a thought.
 
Michael B. Johnson said:
- snip -

Since it's being used as a file server, the server will have less
impact than higher network speed, I think. But I don't know the
specifics of your setup.
_______________________
Michael B. Johnson

I guess evaluating the office network is in order. I believe they
are using a simple LinkSys routers to connect the PCs the the server.

Thanks!
Jon
 
Back
Top