This question already has answers here:
Ping multiple servers in Java [duplicate]
(2 answers)
How to ping an IP address
(16 answers)
Closed 5 years ago.
I want to ping many machines to obtain information of their reachability. Time is critical here and I dont want to wait 1-2 seconds for every machine (assuming that there are hundreds of them). I tried this code snippet and turns out that the isReachable method is synchronous.
InetAddress.getByName(host).isReachable(timeout);
I need a way to make either that method (if possible) nonblocking or come up with another solution that will help cut down the waiting time.
Any help would be greatly appreciated. Thanks in advance.
Related
This question already has answers here:
Simple Swing Delay
(3 answers)
Closed 6 years ago.
In Java, I can use sleep(x) to delay some code from running for x seconds. But, if I'm using Swing, that makes my GUI freeze, so it's not an ideal solution.
How can one create a delay before running a sequence of code in Java?
To start, you probably shouldn't be doing whatever you're doing
in the display thread. If it were in your own thread, the GUI
wouldn't freeze. But short of revisiting your entire thread
strategy, the usual workaround is to add a queue of tasks to
be run later.
This question already has answers here:
How to intercept object creation in Java lower than user class level
(2 answers)
Closed 6 years ago.
Many times I've seen some people tracked how the VM creates objects and how it performs optimization (eg: String concatenation). Unfortunately I can't find the correct command. Does anyone know?
The best tool for this kind f investigation is to use a profiler. I would start with Flight Recorder to record object allocations and CPU consumption and where this is happening.
This question already has answers here:
How does Java handle multithreading?
(4 answers)
Closed 9 years ago.
While doing multi-threading programming in C we can assign threads to different cores of a processor and it gives us surety that the threads will be executed in different cores (i.e hyper-threading).But how exactly java does the above task--
Does it assign the threads to a single core and execute it in
time-stamp basis or assign to different cores..?
If it assign the above to different cores then how..?
By default, Java does not implement any form of Thread affinity. However, because it uses the underlying operating system's threads, it is possible to use native code to set the cpu affinity for a thread. One example of a project that does this is here: https://github.com/peter-lawrey/Java-Thread-Affinity
This question already has answers here:
What is a deadlock?
(19 answers)
Closed 9 years ago.
What is deadlock in programming Object Oriented ?
I had knew deadlock in transaction of Database Systems. But in programming I'm not clear.
I want to know when deadlock occur and how to resolve it.
Thanks!
A deadlock is when you have two or more processes that are each waiting for the other to finish. When this happens, neither one can continue and the program essentially stalls.
There is a basic example here
http://docs.oracle.com/javase/tutorial/essential/concurrency/deadlock.html
well documented.
but, a deadlock occurs when you wait for a object to be freed but that condition is never achieved.
This question already has an answer here:
Determine remote client IP address for Java RMI call
(1 answer)
Closed 2 years ago.
Can anyone explain how I can get the client IP of the Java RMI programming, including a sample of how to use it?
I have looked up the Java API, but it is hard to understand.
I would like to print the client IP on server
The only method in the RemoteServer class that you ever need to call is getClientHost(). That's the one that does what you asked about in your title.
I found the solution and what you guys meaning, thanks:
We need a try-catch to handle the getClientHost() function in the interface implementation of server.
Here's the code:
try{
System.out.println(getClientHost()); // display message
}catch(Exception e){}