Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 685233
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 14, 20262026-05-14T01:54:06+00:00 2026-05-14T01:54:06+00:00

As I understand, OSGi services can be unregistered anytime, including when they are in

  • 0

As I understand, OSGi services can be unregistered anytime, including when they are in use.

Consider an OSGi service which internally makes a long-running JNI call. And while that JNI call is executing, the service is unregistered by OSGi.

Will the JNI call be allowed to finish or terminated mid-way? What if it was just a normal non-jni long running Java call? Will that call be allowed to finish execution or will OSGi terminate everything immediately and unregister?

What is the expected behavior in such a case? Does the expected behavior depend on if the service was loaded using a ‘tracker’ or not?

SG

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-14T01:54:06+00:00Added an answer on May 14, 2026 at 1:54 am

    I think even with “normal” (non-JNI) services, OSGi will not stop any processing that is already going on. In fact, if a bundle somehow keeps a reference to a service instance after it has been unregistered (which it is not supposed to do), it can still call methods on that object (whether those will still work or not is entirely dependent on the service implementation).

    There is no “magic” going on with OSGi services. The bundle lifecycle just controls what gets registered and unregistered in the service registry. Once you have a reference to a service implementation, it is just plain old Java method calls.

    So, to answer you question, unless the bundle (or service) itself does anything to terminate ongoing activity, the long-running call will finish.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Under OSGi, what are the main differences between Components vs Services? As I understand
I wanted to implement ProgressMonitor for an OSGi services. I understand the protocol of
I understand that OSGI is just a specification and they don't event mandate that
I understand that in order to sum array elements in Ruby one can use
I understand the problem that OSGI solved thanks to this question.... What does OSGi
I understand the value of the three-part service/host/client model offered by WCF. But is
Eclipse crashed and won't restart. Can someone help me understand what the problem is?
I understand how to use it, but the syntax of it bothers me. What
I understand the reason i should use retain , but why should I ever
I understand that there is a *.className selector since there can be multiple html

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.