Heap and Stack memory allocation in java, JAVA Programming

Assignment Help:

Each time an object is started in Java it goes into the area of memory named as heap. The primitive variables like double and int are allocated in the stack, if they are local instances and in the heap if they are member variables. In Java functions and local variables are pushed into stack when a function is called and stack pointer is decremented when a method invoke is finished. In a multi-threaded application each thread may have its own stack but will share the similar heap. That is why care could be taken in your code to avoid any concurrent access concern in the heap space. The stack is thread-safe because each and every thread will have its own stack with say 1MB RAM allocated for each thread but the heap is not thread-safe unless protected with synchronization through your code. The stack space may be increased with the -Xss option.

 

1766_Untitled.png

All Java functions are automatically re-entrant. It states that various threads can be executing the same method at once, each with its own copy of the local instance. A Java method can call itself without using any special declarations. That is known as a recursive method call. Provided enough stack space, recursive method calls are completely perfect and valid in Java though it is tough to debug


Related Discussions:- Heap and Stack memory allocation in java

Develop a 3d rolling alarm clock, Need to develop a 3D rolling alarm clock ...

Need to develop a 3D rolling alarm clock (Android) Project Description: I want an android app as 3D rolling alarm clock It should have sound effect when setting the alarm

Explain nested classes (or outer and inner classes) in java?, In Java not a...

In Java not all classes must be described separate from each other. You may put the definition of one class under the definition of another class. The class inside class is called

Legal responsibility of nurses, As registered nurses, we often wonder "am I...

As registered nurses, we often wonder "am I responsible for the L.P.N's and the C.N.A. assigned on my floor.  Will I be blamed if someone makes an error or if someone gets hurt?  N

Difference between an application server and a web server, An application s...

An application server creates data for a Web server - as, collecting data from databases, processing security checks, applying relevant business programs, and/or storing the state

Describe overriding methods, Describe Overriding Methods ? Assume that...

Describe Overriding Methods ? Assume that one day you've just finished your Car class. It's been plugged into your traffic simulation that is chugging along merrily simulating

Lookupdispatchaction and dispatchaction, What is difference among LookupDis...

What is difference among LookupDispatchAction and DispatchAction? Ans) The difference among LookupDispatchAction and DispatchAction is that the actual method that gets known in

Program to read a keyboard value and exit from the code, Using the above t...

Using the above thread program, now create 20 threads in your program and run them. No need to wait for the keyboard in each thread, just print "Hello" and its thread id in each t

Multiple choices output and codes, codes and output on how to make multiple...

codes and output on how to make multiple choices quiz

Write a java rest client, Write a Java REST client to perform the following...

Write a Java REST client to perform the following- The client will read the contents of the file - invoice.txt. The first line of the file will display the type of the currency.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd