Need help making while loops work : I've always struggled with while loops because they barely ever work for me. They always crash my programs but in this instance I really need it to work:

    void Update () {
        while (!gameOver)
        {
            if (!spawned)
            {
                //Do something
            }
	        else if (timer >= 2.0f)
	        {
	        	//Do something else
	        }
	        else
	        {
	            timer += Time.deltaTime;
	        }
    	}
	}

Ideally, I want those if statements to run as the game runs. Right now it crashes the program and I know it's the while loop which is the problem because it crashes anytime I comment it out.