Like Procedure , you do not have to use Function . An ad hoc solution may fit your needs better. Some people prefer to learn those code snippets by heart until it flows off their fingers naturally. Pick the technique that best suits your style. Also don't limit yourself to Function -like notification, notification is a generic mechanism that you can use to build more flexible solutions.
Function is common and convenient though.
Join A special case for notification is the termination of thread. I've taken you on a tour through concurrent programming in Java. The constraints of time and space have dictated that it be fast and in some respects superficial. Advanced techniques were left out for future articles. I also demonstrated how to painlessly inject multithreading in applets.