JDE-2.3.3beta2 - Field and Method Completion
Field and Method completion seems to slow. There seems to be at least 2 to 3 second delay in showing the dialog box for possible completions. Jeba __ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com
JDE-2.3.3beta2 - Field and Method Completion
Jeba Bhaskaran writes: Field and Method completion seems to slow. There seems to be at least 2 to 3 second delay in showing the dialog box for possible completions. The response time is a function of two factors: using Java reflection to gather information about a class to be completed and the need to transmit this back to Emacs via standard I/O. We cache the results of this process the first time any field or method of a class is compled so that further completions on that class should be very fast. I don't know how else to speed up the process. - Paul
[jde] JDE-2.3.3beta2 - Field and Method Completion
Raul Acevedo writes: Paul Kinnucan wrote: Emacs is not multithreaded. You can try to interleave operations between keystrokes but this is dicey. Further, the current file is not necessarily ever going to be completed in the current session. Emacs Lisp isn't, but Emacs can start asynchronous processes. If JDEE uses Java reflection, I'm assuming this is done in the BSH buffer... Yes. I suppose. One possibility might be to start a process when emacs starts up that builds a completion database for the entire classpath in the background and ships it over to Emacs either via standard I/O or via a temporary file. Provision would need to be made for updating the database as files are compiled. - Paul It's possible create multiple BSH buffers to handle multiple async requests. You create a new one (up to a configurable max) when all others are busy, otherwise you pick the first free one. I did something like this for my MIT undergrad thesis, which was done in Emacs Lisp... it's been a while, but I'm sure something like this is possible. It shouldn't even be that bad to set up, if you properly abstract how you dispatch a subprocess request. One use is for the JDEE to build its own completion database, e.g., semantic, that does not rely on Java reflection. This approach has been discussed at length on this list several times over the last three years. Please refer to the archive for more info. Interesting. I'll have to look it up... Raul
Re: [jde] JDE-2.3.3beta2 - Field and Method Completion
Compared to 2.3.2, 2.3.3beta2 Field and Method completion is slow. In 2.3.2, completion was almost instaneous, except the first time completion was called. Jeba --- Paul Kinnucan [EMAIL PROTECTED] wrote: Raul Acevedo writes: Paul Kinnucan wrote: Emacs is not multithreaded. You can try to interleave operations between keystrokes but this is dicey. Further, the current file is not necessarily ever going to be completed in the current session. Emacs Lisp isn't, but Emacs can start asynchronous processes. If JDEE uses Java reflection, I'm assuming this is done in the BSH buffer... Yes. I suppose. One possibility might be to start a process when emacs starts up that builds a completion database for the entire classpath in the background and ships it over to Emacs either via standard I/O or via a temporary file. Provision would need to be made for updating the database as files are compiled. - Paul It's possible create multiple BSH buffers to handle multiple async requests. You create a new one (up to a configurable max) when all others are busy, otherwise you pick the first free one. I did something like this for my MIT undergrad thesis, which was done in Emacs Lisp... it's been a while, but I'm sure something like this is possible. It shouldn't even be that bad to set up, if you properly abstract how you dispatch a subprocess request. One use is for the JDEE to build its own completion database, e.g., semantic, that does not rely on Java reflection. This approach has been discussed at length on this list several times over the last three years. Please refer to the archive for more info. Interesting. I'll have to look it up... Raul __ Do you Yahoo!? SBC Yahoo! DSL - Now only $29.95 per month! http://sbc.yahoo.com