Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сравнение эффектисности очистки TextBox, .Text = ""; vs .Text = String.Empty; 
V
    Опции темы
Azzdorf
  Дата 13.6.2008, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 190
Регистрация: 29.3.2007

Репутация: нет
Всего: нет



Пишу программу, которая включает огромное количество TextBox и которая постоянно требует очистки этих самых TextBox. smile 
Стал вопрос об эффектисности методов очистки, взял пару незамысловатых вариантов smile :

1)  smile 
Код

someTextBox.Text = "";

2)  smile 
Код

someTextBox.Text = String.Empty;


Что эффективнее использовать и в каких случаях? smile 
Как провети показательный тест на скорость? smile 
И есть ли другие варианты? smile 

оффтоп: (знаю что один вопрос - один топик smile  -  уважаю smile , но тут все включено в тему smile )
--------------------
Иногда шаг вперед - это результат хорошего пинка под зад.
PM MAIL   Вверх
QryStaL
Дата 13.6.2008, 08:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 10
Всего: 32



А как же TextBox.Clear() ?


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
Ram1reS
Дата 13.6.2008, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 25.4.2008
Где: Москва

Репутация: 2
Всего: 5



Код

Text='' : 00:00:00.0001108
Text=String.Empty : 00:00:00.0000907
Clear() : 00:00:00.0000918

Text='' : 00:00:00.0000952
Text=String.Empty : 00:00:00.0001021
Clear() : 00:00:00.0000936

Text='' : 00:00:00.0000944
Text=String.Empty : 00:00:00.0000924
Clear() : 00:00:00.0000975

Text='' : 00:00:00.0000948
Text=String.Empty : 00:00:00.0001046
Clear() : 00:00:00.0000926

Text='' : 00:00:00.0000940
Text=String.Empty : 00:00:00.0000915
Clear() : 00:00:00.0000917


Код

           Stopwatch sw = new Stopwatch();

            textBox1.Text = "abc";

            sw.Start();
            textBox1.Text = "";
            sw.Stop();
            textBox2.Text += "Text='' : " + sw.Elapsed.ToString() + "\r\n";

            sw.Reset();
            textBox1.Text = "abc";

            sw.Start();
            textBox1.Text = String.Empty;
            sw.Stop();
            textBox2.Text += "Text=String.Empty : " + sw.Elapsed.ToString() + "\r\n";
          
            sw.Reset();
            textBox1.Text = "abc";

            sw.Start();
            textBox1.Clear();
            sw.Stop();
            textBox2.Text += "Clear() : " + sw.Elapsed.ToString() + "\r\n";


Это сообщение отредактировал(а) Ram1reS - 13.6.2008, 13:46
--------------------
 
PM MAIL ICQ   Вверх
PashaPash
Дата 13.6.2008, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1233
Регистрация: 3.1.2008

Репутация: 9
Всего: 49



Ram1reS, порешность инструмента слишком большая. Это как мерять скорость света секндомером.
Azzdorf, разница между "" и String.Empty зависит от версии JIT, и даже от того, была ли сборка обработана ngen.exe. На практике - ты не можешь предстаказать что будет быстрее. И даже не сможешь измерить.


--------------------
PM MAIL WWW   Вверх
QryStaL
Дата 13.6.2008, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 10
Всего: 32



По-моему, разница слишком мизерна, чтобы повлиять на производительность. Так что можно не заморачиваться, и использовать TextBox.Clear()  smile 


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
Azzdorf
  Дата 13.6.2008, 20:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 190
Регистрация: 29.3.2007

Репутация: нет
Всего: нет



Цитата(QryStaL @ 13.6.2008,  15:07)
По-моему, разница слишком мизерна, чтобы повлиять на производительность. Так что можно не заморачиваться, и использовать TextBox.Clear()  smile

Спасибо QryStaL Ram1reS PashaPash

Последую совета QryStaL что-бы не париться и использовать инструментдл яэтого придуманый
Код

TextBox.Clear()

--------------------
Иногда шаг вперед - это результат хорошего пинка под зад.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0472 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.