View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004603 | JEDI VCL | 00 JVCL Components | public | 2008-11-25 19:23 | 2009-01-13 23:09 |
Reporter | ricardona | Assigned To | jfudickar | ||
Priority | normal | Severity | feature | Reproducibility | N/A |
Status | resolved | Resolution | fixed | ||
Product Version | Daily / GIT | ||||
Target Version | Fixed in Version | ||||
Summary | 0004603: New property TjvThread.AfterCreateDialogForm | ||||
Description | I'm use the threaded TJvOdacSmartQuery with success, i now want synchronize several controls but i need the property TjvThread.AfterCreateDialogForm, is posible add this property to TJvOdacSmartQuery component. | ||||
Additional Information | The ShowDelay property delay the dialog form show, during this time all controls are enable and user can use them, the idea is block the main thread and wait (maybe a event) the dialog creation for unblock the main thread. | ||||
Tags | No tags attached. | ||||
|
Hi, please describe why you can't use the AfterDatasetThreadExecution and BeforeDatasetThreadExecution Events of the dataset. They should exactly do what you want (i use them for this purpose) Greetings Jens |
|
Hi Jens, After several tests the new property is not a option. So my problem is, i want block main form (disable controls to user) and change screen cursor only during ShowDelay time because before show dialog (ShowDelay) all controls are enable and user can use them, that behavior is "dangerous" for the process. Sorry, English is not my language, Thanks for your time and patience Ricardo |
|
Hi, Creating the threads on every call costs a lot of time; start and resume thread will be more cheap for component, when i enable showdialog and thread execution i get 400-500 milli seconds of extra time for every query; i further investigate the issue, where should i start for change the component? Thanks in advance and happy new year. Ricardo |
|
Hi Ricardo, i see what you mean. But i think this will mean a complete rewrite of the thread handler. Have a look at JvBaseDBThreadedDataset.pas. Here you find the most of the Database Threads. You can ask me what ever you want to now, the most of this code is based on my fingers :-) Greetings Jens |
|
Hi Jens, Your control is really nice. I researched the Handler and TJvThread.Execute always create thread, you say is necessary to rewrite it. What do you think for rewrite use AsyncCalls 2.91 (http://andy.jgknet.de/blog/?page_id=100 from Andy), thread pool and waiting-queue concepts are very interesting for reuse thread and no recreate on every execute; or is a completely new component (with permission of Andy). Greetings Ricardo |
|
The point is not to rewrite TJvThread. You had to rewrite the Handler. I don't think it's a good idea to use AsyncCalls. Not because anything against andreas and his code :-). The point is the mixture of two libraries at an elementary level. But we could ask him. Maybe you could start a public discussion in the newsgroups. |
|
Jens, Please close this issue. I will start a public discussion in the newsgroups later. Thanks for help Ricardo |
|
Further discussion necessary |
Date Modified | Username | Field | Change |
---|---|---|---|
2008-11-25 19:23 | ricardona | New Issue | |
2008-12-03 16:22 | jfudickar | Note Added: 0015077 | |
2008-12-03 16:22 | jfudickar | Status | new => feedback |
2008-12-04 20:25 | ricardona | Note Added: 0015084 | |
2009-01-10 13:22 | ricardona | Note Added: 0015237 | |
2009-01-10 14:18 | jfudickar | Note Added: 0015238 | |
2009-01-12 08:14 | ricardona | Note Added: 0015241 | |
2009-01-12 17:26 | jfudickar | Note Added: 0015242 | |
2009-01-13 19:19 | ricardona | Note Added: 0015243 | |
2009-01-13 23:09 | jfudickar | Note Added: 0015244 | |
2009-01-13 23:09 | jfudickar | Status | feedback => resolved |
2009-01-13 23:09 | jfudickar | Resolution | open => fixed |
2009-01-13 23:09 | jfudickar | Assigned To | => jfudickar |