(19)Fresh off Patent
(45) Week of Oct 19, 2026 No. 7 3,667 lapsed 70 listed
Software & AI · expires at full term Oct 25, 2026

Coalesced transfer of method calls to Java event dispatch thread

Mechanism to send method calls created on any thread to the Java Event Dispatch Thread (EDT) with per-call coalescing rules so queued calls can be merged before execution. Call creators specify method, target object, arguments and a coalescing indicator; the queue applies coalescing and the EDT executes the coalesced call. GUI frameworks, background-worker libraries and Swing-based applications are the intended users.

Sheet 1 of the patent drawingsSheet 2 of the patent drawings

(57) What the patent covered

This write-up was generated by AI from the patent's text and may contain mistakes, so check it against the original patent before relying on it.

The patent claimed creating a call on an invoke thread that includes (i) a method identifier, (ii) an object identifier, (iii) one or more arguments, and (iv) a coalescing indicator; sending that call into the EDT queue where one or more prior calls are stored; coalescing the new call with a previous queued call according to the indicated coalescing type; retrieving the coalesced call and executing the identified method with the arguments on the EDT.

Distinguishing feature: Inclusion of an explicit coalescing indicator in the cross-thread call object and performing queue-side coalescing before EDT execution.

Novelty 3/5. At filing time Swing/EDT queuing and invokeLater/invokeAndWait were common; adding a per-call coalescing indicator and queue-level coalescing was a focused improvement rather than a new class of system.

Implementation

Implement a lightweight Call object (method reference or Runnable, target object reference, argument payload, enum coalescing flag). Use a concurrent queue plus a short map keyed by (target, method, coalescing type) to detect an existing queued call; when enqueuing, atomically check the map and merge or replace according to the flag. On the EDT run a dispatcher (SwingUtilities.invokeLater or a single-threaded Executor) that drains the queue and invokes the resolved calls on the EDT. Provide APIs for callers to create calls and specify coalescing semantics.

Components: Producer thread context (background/worker thread), call envelope object with fields: method id, object id, arguments, coalescing indicator, EDT-side queue with lookup/coalescing logic, EDT executor that dequeues and invokes target methods.

Buildability 5/5. Main work is correct concurrent queuing and merge rules and ensuring calls execute only on the EDT; no special hardware or large data is required.

Market demand

No demand check has been run for this patent. Likely search terms: EDT coalescing Swing invokeLater, cross-thread UI call coalescing, queue coalescing for GUI event dispatch. The links in the sidebar open these searches.

Buyers: Desktop Java/Swing application developers; UI framework maintainers.

Before manufacturing

No related continuation or divisional patents in force were found. Design patents, trademarks and unrelated patents may still cover the product.

Similar patterns and APIs (SwingUtilities.invokeLater, SwingWorker, event coalescing in toolkits) are common; other patents or library implementations may be relevant.

This patent's full term ends on Oct 25, 2026. A patent that has run its full term cannot be revived. This page is a research lead, not legal advice. Obtain a freedom-to-operate opinion before manufacturing.

Claim 1, as granted

1. A method for transferring a method call from an invoke thread to an event dispatch thread, the invoke thread and the event dispatch thread executing independent of one another, the event dispatch thread having an associated queue, the method comprising the steps of: defining a new call on the invoke thread, the new call including: i) identification of a method, ii) identification of an object, iii) one or more arguments, and iv) a coalescing indicator indicating a type of coalescing for the call; sending, during execution of the invoke thread, the new call to the queue, one or more previous calls being stored in the queue; coalescing the new call with one of the previous calls in the queue according to the type of coalescing indicated by the coalescing indicator; retrieving the coalesced new call from the queue; and executing the retrieved call as an event on the event dispatch thread including calling the identified method for the identified object and passing the one or more arguments.