"Go" writing high-quality Code 157 recommendations for improving C # programs--recommendation 64: Adding Tester-doer mode to loops instead of placing try-catch inside loops

Source: Internet
Author: User

Recommendation 64: Increase the tester-doer mode for loops instead of placing the try-catch inside the loop

If you need to throw an exception in a loop, you need to be particularly careful that throwing an exception is a fairly performance-impacting process. You should try to judge some of the conditions of the anomaly in the loop and then process it according to the conditions.

Do a test:

Stopwatch Watch =stopwatch.startnew (); intx =0;  for(inti =0; I <10000; i++)            {                Try                {                    intj = I/x; }                Catch{}} Console.WriteLine (watch.            Elapsedmilliseconds); Watch=stopwatch.startnew ();  for(inti =0; I <10000; i++)            {                if(x = =0)                {                    Continue; }                intj = I/x; } Console.WriteLine (watch.            Elapsedmilliseconds); Console.readkey ();

The output is:

796

0

In the above code, we foresee that the code will be able to occur dividebyzeroexception anomalies, and then, the adjustment strategy, the conditions of the exception occurred special treatment: Continue let the efficiency has been greatly improved.

Turn from: 157 recommendations for writing high-quality code to improve C # programs Minjia

"Go" writing high-quality Code 157 recommendations for improving C # programs--recommendation 64: Adding Tester-doer mode to loops instead of placing try-catch inside loops

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.