[mercury-users] Re: java / threads / UIMA
Tomas By
tomas at basun.net
Thu Aug 18 00:07:21 AEST 2011
Um...
I don't think I am initializing Mercury. Perhaps that could be the
problem?
Shouldn't there be some error msg?
/Tomas
On Wed, August 17, 2011 16:00, Tomas By wrote:
> Hi all,
>
> I have a Mercury predicate that is currently not doing anything:
>
> | :- pred lexlookup(string::in) is det.
> | lexlookup(_).
> |
> | :- pragma foreign_export("Java",lexlookup(in),"lexlookup").
>
> which is called by a Java procedure:
>
> | public void process(JCas jcas) throws AnalysisEngineProcessException {
> | String text = jcas.getDocumentText();
> | lexlookup.lexlookup(text);
> | System.out.println("done");
> | }
>
> overriding a `method' in a class that `extends' JCasAnnotator_ImplBase,
> which means it is a UIMA `annotator' (see uima.apache.org).
>
> Here is the call:
>
> | class ProcessLexicon extends SwingWorker<Void,Void> {
> | @Override
> | public synchronized Void doInBackground() {
> | try {
> | Global.lex_engine.process(Global.cas);
> | } catch (Exception x) {
> | x.printStackTrace();
> | }
> | return null;
> | }
> | @Override
> | public void done() {
> | }
> | }
>
> The idea being that it runs in a separate thread.
>
> However, it does not seem to terminate. The `done' is never printed.
>
> Any ideas what goes wrong? How can I debug it?
>
> /Tomas
>
>
--------------------------------------------------------------------------
mercury-users mailing list
Post messages to: mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions: mercury-users-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the users
mailing list