IP Library › Granted Patent US 9,367,320
Granted Patent B2
US 9,367,320 · App. 14/414,666 · Granted Jun 14, 2016

Techniques for hybrid computer thread creation and management

Inventors: Fraser Bohm (Salisbury, GB); Ivan D. Hargreaves (Hampshire, GB); Julian Horn (Hursley, GB); Ian J. Mitchell (Hants, GB)
Assignee: International Business Machines Corporation
G06F9/3836G06F9/45516G06F9/4843G06F9/5044
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,367,320
App. No.
14/414,666
Granted
Jun 14, 2016
Kind
B2
Abstract

A technique for operating a computer system to support an application, a first application server environment, and a second application server environment includes intercepting a work request relating to the application issued to the first application server environment prior to execution of the work request. A thread adapted for execution in the first application server environment is created. A context is attached to the thread that non-disruptively modifies the thread into a hybrid thread that is additionally suitable for execution in the second application server environment. The hybrid thread is returned to the first application server environment.

Claims (36)

1. A computer system configured to support an application, a first application server environment, and a second application server environment, the system comprising:

a processor executing a set of request interceptor instructions configured to intercept a work request relating to the application issued to the first application server environment prior to execution of the work request;

the processor executing a set of executor instructions configured to, responsive to executing the set of request interceptor instructions, create a thread adapted for execution in the first application server environment;

the processor executing a set of thread dispatcher instructions configured to, responsive to executing the set of executor instructions, attach a context to the thread to non-disruptively modify the thread into a hybrid thread that is additionally suitable for execution in the second application server environment; and

wherein the hybrid thread is operable to execute in the first application server environment and in the second application server environment without requiring modification of the first and second application server environment;

wherein the hybrid thread comprises first data that is only visible to a server in the first application server environment and second data that is only visible to another server in the second application server environment;

wherein the first application server environment and the second application server environment are incompatible in their program execution models;

the processor executing a set of catcher instructions configured to, responsive to executing the thread dispatcher instructions, return the hybrid thread to the first application server environment.

2. The computer system of claim 1 , wherein only one of the first application server environment or the second application server environment is a procedural program environment.

3. The computer system of claim 1 , wherein only one of the first application server environment or the second application server environment is an object-oriented program environment.

4. The computer system of claim 1 , wherein the context comprises transactional control data of one of the application server environments.

5. The computer system of claim 1 , wherein the context comprises security control data of one of the application server environments.

6. The computer system of claim 1 , wherein the context comprises monitoring control data of one of the application server environments.

7. The computer system of claim 1 , wherein the context comprises diagnostic tracing control data of one of the application server environments.

8. The computer system of claim 1 , wherein the context comprises data enabling access to an application programming interface of one of the application server environments.

9. A method of operating a computer system to support an application, a first application server environment, and a second application server environment, the method comprising:

intercepting, by a request interceptor component executing on the computer system, a work request relating to the application issued to the first application server environment prior to execution of the work request;

responsive to the request interceptor component, creating, using the computer system, a thread adapted for execution in the first application server environment by an executor component;

responsive to the executor component, attaching to the thread, by a thread dispatcher component executing on the computer system, a context to non-disruptively modify the thread into a hybrid thread that is additionally suitable for execution in the second application server environment; and

wherein the hybrid thread is operable to execute in the first application server environment and the second application server environment without requiring modification of the first and second application server environments;

wherein the hybrid thread comprises first data visible to a server only in the first application server environment and second data visible to another server only in the second application server environment;

wherein the first application server environment and the second application server environment are incompatible in their program execution models;

responsive to the thread dispatcher component, returning the hybrid thread to the first application server environment by a catcher component executing on the computer system.

10. The method of claim 9 , wherein only one of the first application server environment or the second application server environment is a procedural program environment.

11. The method of claim 9 , wherein only one of the first application server environment or the second application server environment is an object-oriented program environment.

12. The method of claim 9 , wherein the context comprises transactional control data of one of the application server environments, security control data of one of the application server environments, monitoring control data of one of the application server environments, diagnostic tracing control data of one of the application server environments, and/or data enabling access to an application programming interface of one of the application server environments.

13. A computer program product, comprising:

a non-transitory computer-readable storage medium; and

computer-readable program code embodied on the computer-readable storage medium, wherein the computer-readable program code, when executed by a computer system, causes the computer system to:

intercept a work request relating to the application issued to the first application server environment prior to execution of the work request;

create a thread adapted for execution in the first application server environment;

attached to the thread a context to non-disruptively modify the thread into a hybrid thread additionally suitable for execution in the second application server environment; and

wherein the hybrid thread is operable to execute in the first application server environment and the second application server environment without requiring modification of the first and second application server environments;

wherein the hybrid thread comprises first data visible to a server only in the first application server environment and second data visible to another server only in the second application server environment;

wherein the first application server environment and the second application server environment are incompatible in their program execution models;

return the hybrid thread to the first application server environment.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2015
From: BOHM, FRASER; HARGREAVES, IVAN D.; HORN, JULIAN; MITCHELL, IAN J.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 034768/0608 →
Priority Claims (1)
GB 1212509.2 · Jul 13, 2012 · national
Continuity (1)
Related Publication 20150193237A1 · Jul 9, 2015