G
Guest
Hello,
I have an application, that has been running on a single processor server
for more then a year without any problems. Now I'm migrating to a dual
processor server, and I'm experiencing problems with threading.
The application is actually a kind of job schedular. For all jobs, I can set
a recurring interval (daily,weekly, monthly etc) at which the specific job
should be started. We program each job, according to an interface. Examples
of jobs are: server monitoring, reporting, messaging etc.
The job itself maintains a status. When it's complete, it's status is set to
ready.
The job-schedular looks at certain times for two things: Should I start a
new job and Is there a job with status Ready which should be stopped.
the code for stopping a job is only a:
ji.InstanceThread.Abort();
ji.InstanceThread.Join(1000);
MJSJobList._jobList.Remove(ji);
What I now see, is that on the single processor server, this works, and the
job is removed from the list.
On the dual-processor server, however the job remains in the list with
status "Ready"..
Am I missing somethinge here ? The code worked perfectly on the other server
for a very long time.
Thanks in advance,
Michel Meex
I have an application, that has been running on a single processor server
for more then a year without any problems. Now I'm migrating to a dual
processor server, and I'm experiencing problems with threading.
The application is actually a kind of job schedular. For all jobs, I can set
a recurring interval (daily,weekly, monthly etc) at which the specific job
should be started. We program each job, according to an interface. Examples
of jobs are: server monitoring, reporting, messaging etc.
The job itself maintains a status. When it's complete, it's status is set to
ready.
The job-schedular looks at certain times for two things: Should I start a
new job and Is there a job with status Ready which should be stopped.
the code for stopping a job is only a:
ji.InstanceThread.Abort();
ji.InstanceThread.Join(1000);
MJSJobList._jobList.Remove(ji);
What I now see, is that on the single processor server, this works, and the
job is removed from the list.
On the dual-processor server, however the job remains in the list with
status "Ready"..
Am I missing somethinge here ? The code worked perfectly on the other server
for a very long time.
Thanks in advance,
Michel Meex