• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Bear Bibeault
  • Paul Clapham
  • Jeanne Boyarsky
Sheriffs:
  • Devaka Cooray
  • Junilu Lacar
  • Tim Cooke
Saloon Keepers:
  • Tim Moores
  • Ron McLeod
  • Tim Holloway
  • Claude Moore
  • Stephan van Hulst
Bartenders:
  • Winston Gutkowski
  • Carey Brown
  • Frits Walraven

Java 8 MacOs and Performance  RSS feed

 
Ranch Hand
Posts: 235
Eclipse IDE Mac Safari
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No idea which forum this goes into if indeed it's anything to do with Java at all.

I have some serious database work being carried out by a Java Swing application and I've noticed by monitoring the progress of the database updates that it works a lot faster if the Java Swing application is in the foreground and has focus.

It's probably just how MacOS works, but it has made me wonder if there is anything that can be done within Java to request that the operating system gives Java a higher priority. Failing that I suppose I will just have to keep the program in the foreground.
 
Marshal
Posts: 6594
443
BSD Linux Mac OS X VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi David!

1. In terminal execute "top" instruction and find PID (process id) of your running task.
2. Execute instruction "ps -lp pid" (replace pid with the number identified from the step 1).

Now, after executing second instruction, you'll see NI attribute in a given table, it is a niceness level, ranging from -20 to 19. Default is 0, so I guess that is what is going to be for your program set.
The lower niceness level, the higher CPU priority to your program will be given.

3. To change the priority you need to execute instruction "sudo renice -n level -p pid" (by replacing level with the number in a range of -20 and 19 and pid with process id of your running program).

Note: entering this instruction, you'll be asked to enter your superuser password, so do.

Read more about the commands renice and nice by executing "man renice" and "man nice" in the terminal (note: quotes not needed).
 
She still doesn't approve of my superhero lifestyle. Or this shameless plug:
Become a Java guru with IntelliJ IDEA
https://www.jetbrains.com/idea/
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!