public class Problem_3 {
    public static void main(String... args) {
        long limit = 600851475143L;
        long largestPrimeFactor = 0;
        for (long number = 2; number < limit; number++) {
            if (isPrime(number)) {
                if ((limit % number == 0)){
                    largestPrimeFactor = number; 
                }
            }
        }       
        System.out.println(largestPrimeFactor);
    }
    public static boolean isPrime(long number) {
        for (int i = 2; i < number; i++) {
            if (number % i == 0) {
                return false; 
            }
        }
        return true; 
    }
}
I'm sure, the above program is not in infinite loop. I tested with limit = 13195; and got desired result 29
I don't understand why my CPU is taking forever to run it.
EDIT:
Its my code for ProjectEuler.net problem number 3. 
 
     
     
     
     
     
    