You can see the transaction lock with enterprise manager or command prompt.
The KILL SESSION command doesn’t actually kill the session. It merely asks the session to kill itself. In some situations, like waiting for a reply from a remote database or rolling back transactions, the session will not kill itself immediately and will wait for the current operation to complete. In these cases the session will have a status of “marked for kill”. It will then be killed as soon as possible.
The ALTER SYSTEM DISCONNECT SESSION syntax as an alternative method for killing Oracle sessions. Unlike the KILL SESSION command which asks the session to kill itself, the DISCONNECT SESSION command kills the dedicated server process (or virtual circuit when using Shared Sever), which is equivalent to killing the server process from the operating system. The basic syntax is similar to the KILL SESSION command with the addition of the POST_TRANSACTION clause. The SID and SERIAL# values of the relevant session can be substituted into one of the following statements.
The POST_TRANSACTION clause waits for ongoing transactions to complete before disconnecting the session, while the IMMEDIATE clause disconnects the session and ongoing transactions are recovered immediately.
With Command Prompt
SQL> select SID,serial#,username from v$session where SID in (select blocking_session from v$session);
If you want to kill session, you can use below command.
SQL>alter system kill session ‘SID,SERIAL#’ immediate;
or
SQL>alter system disconnect session ‘SID,SERIAL#’ immediate;
SQL>alter system disconnect sessiob ‘SID,SERIAL#’ post_transaction;
With Enterprise Manager
Performans > Blocking Sessions
Note : If you want to kill transactions, you can use session kill.