Juniper Networks Interview Question

Why do we use volatile. Different header field TCP, UDP header, differences, flow Trie, hash map Implement multithreading. Use mutex, semaphores in the program. Find the depth of the tree