Since Yosemite upgrade, I always need to "force eject" drives?
You can find out what's using the volume with the command:

sudo lsof +D '/Volumes/volumename'


Note that sudo will prompt for your admin password, and it won't echo as you type. The first column will list the name(s) of the processes using files on the volume. In my personal experience, the culprit is usually "mds" and/or "mds_store". These processes are both involved in indexing the files so that Spotlight can search them quickly.

Sometimes they seem to let loose of disk and allow a normal eject, but sometimes not. Unfortunately, I don't know of a real solution; sometimes you just have to use Force Eject.