EgonHugeist wrote: ↑24.01.2021, 07:38Why is there an FetchAll called while you wanna kill the fetches dynamic?
This worker thread collects a large amount of CLOB fields and does some calculations on their contents one-by-one. If I call .FetchAll before the actual data processing 2 things will happen:
- The application will report nothing but "Opening query" for ~20-30 minutes instead of almost immediately showing that it already processed some
- Memory consumption will be in the 4 GB-ish range instead of 150 MB
EgonHugeist wrote: ↑24.01.2021, 07:38looking to the stacktrace.. I think there is a general design problem in what you're doing i guess.
[...]
Shouldn't you add an event to the dataset and test if it was signaled? I.e.
I do have a cycle like this... in this case the question is valid... why am I calling .AbortOperation at the first place...? You got me thinking, I'll attempt to get around it.
The reason I reported is because in the constructor there is an if statement. One side has a Try..Finally block, the other does not and that looked suspicious.
Just take a look when you have some free time; I'll attempt to eliminate the .AbortOperation in the mean time.