1. C# / Говнокод #3756

    +118

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    void Say(bool work)
            {
                if (work)
                {
                    r = new Random();
                    i = r.Next(100);
                    textBlock1.Text = i.ToString();
    
                    textBlock1.Dispatcher.BeginInvoke(new AsyncSay(this.Say), DispatcherPriority.SystemIdle, null);
                }
            }
    
    void BtnSay_Click(object sender, RoutedEventArgs e)
            {
                Say(true);
            }
    
            private void BtnStopSay_Click(object sender, RoutedEventArgs e)
            {
                Say(false);
            }

    Запостил: sergylens, 22 Июля 2010

    Комментарии (6) RSS

    • StopSay ... хватит 3.14здеть !
      work надо выносить из функции и не плодить ложные вызовы.
      Ответить
      • пример анти-говнокода в студию :)

        пруф() ор дай() :)
        Ответить
        • По-моему, это очевидно.
          void Say()
                  {
                          r = new Random();
                          i = r.Next(100);
                          textBlock1.Text = i.ToString();
          
                          textBlock1.Dispatcher.BeginInvoke(new AsyncSay(this.Say), DispatcherPriority.SystemIdle, null);
                  }
          
          void BtnSay_Click(object sender, RoutedEventArgs e)
                  {
                      Say();
                  }
          
                  private void BtnStopSay_Click(object sender, RoutedEventArgs e)
                  {
                        ;
                  }
          Ответить
          • а ты не заметил, что еще тут асихнронный запрос воркает? :)
            как бы...
            Ответить
            • И как оно по вашему мнению работает ?
              Ответить
              • А разве EndInvoke не нужен в BtnStopSay_Click() ?

                чтобы прекратить асихн.?
                Ответить

    Добавить комментарий