The SQLNET.EXPIRE_TIME (set in your sqlnet.ora) determines how often you check for dead connections:
"Specify the time interval, in minutes, to send a probe to verify that client/server connections are active. Setting a value greater than 0 ensures that connections are not left open indefinitely, due to an abnormal client termination. If the probe finds a terminated connection, or a connection that is no longer in use, then it returns an error, causing the server process to exit. This setting is intended for the database server, which typically handles multiple connections at any one time."
http://docs.oracle.com/database/122/NETAG/configuring-profiles.htm#NETAG091