There seems to be a couple of bugs.
Firstly, threads in the list are arranged by thread ID, not by most recently viewed.
Then, when the database is updated, it appears to only replace the last value. Meaning the first 4 threads you viewed are never removed from the list and the last value (the most recent thread) is constantly updated.
Here's a fix for the second issue. In the showthread_complete plugin, change:
PHP Code:
$recent_threadviews = array_slice($recent_threadviews, 0, 4);
to:
PHP Code:
$recent_threadviews = array_slice($recent_threadviews, 1, 4);
That makes sure the first value in the recent_threadviews array is removed.