Make Improvements to Our GenServer
Explore how to improve GenServer by integrating the Task module to run jobs concurrently. Understand how to prevent GenServer blocking, manage timeouts, and handle asynchronous messages effectively to optimize long-running processes.
We'll cover the following...
We'll cover the following...
Limitations of our GenServer
Our SendServer implementation is far from ideal. Remember that send_email/1 pauses the process for three seconds. If we try running GenServer.cast(pid, {:send, "hello@email.com"}) several times in a row, GenServer acknowledges all messages by returning ...