Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.08.2008, 16:25
enepx вне форума Посмотреть профиль Отправить личное сообщение для enepx Посетить домашнюю страницу enepx Найти все сообщения от enepx
  № 11  
Ответить с цитированием
enepx
 
Аватар для enepx

Регистрация: Aug 2006
Адрес: Мюнхен
Сообщений: 509
Отправить сообщение для enepx с помощью ICQ Отправить сообщение для enepx с помощью Yahoo Отправить сообщение для enepx с помощью Skype™
Да помню тут на форуме была беседа, че-то найти ее не могу.
Или там было сказано, что для int'а быстрее работает i+=1, чем i++. Точно не скажу, может кто еще помнит?

P.S. Я после тех постов стал юзать только Number с i++ в циклах for.

Старый 31.08.2008, 16:28
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 12  
Ответить с цитированием
Chas
[+1 14.08.08]
[+1 20.08.08]
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
эм...
вообще-то быстрее не Number а int. И i++ быстрее, чем i+=1
Более того, i++++++++ все еще быстрее, чем i+=1
__________________
~
Never trouble trouble till trouble troubles you!

Старый 31.08.2008, 16:53
enepx вне форума Посмотреть профиль Отправить личное сообщение для enepx Посетить домашнюю страницу enepx Найти все сообщения от enepx
  № 13  
Ответить с цитированием
enepx
 
Аватар для enepx

Регистрация: Aug 2006
Адрес: Мюнхен
Сообщений: 509
Отправить сообщение для enepx с помощью ICQ Отправить сообщение для enepx с помощью Yahoo Отправить сообщение для enepx с помощью Skype™
Что быстрее,
int, i++
или
Number, i++
?
Здесь же сравнивали. Вы помните эту thread?

Старый 31.08.2008, 16:57
Яски вне форума Посмотреть профиль Отправить личное сообщение для Яски Найти все сообщения от Яски
  № 14  
Ответить с цитированием
Яски

блогер
Регистрация: May 2008
Адрес: (0, 10, 185) в локальной системе
Сообщений: 721
Записей в блоге: 6
От версии к версии показатели меняются. Для целых чисел между Number и int сильной разницы не будет, но все же int быстрее.

Старый 31.08.2008, 17:42
enepx вне форума Посмотреть профиль Отправить личное сообщение для enepx Посетить домашнюю страницу enepx Найти все сообщения от enepx
  № 15  
Ответить с цитированием
enepx
 
Аватар для enepx

Регистрация: Aug 2006
Адрес: Мюнхен
Сообщений: 509
Отправить сообщение для enepx с помощью ICQ Отправить сообщение для enepx с помощью Yahoo Отправить сообщение для enepx с помощью Skype™
Хорошо, убедили.
Если найду посты - напишу.

Старый 31.08.2008, 18:04
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 16  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
провел тесты:
возможно что то не так... смотрите сами, но оказалось намбер не всегда медленнее инта. ну поправите если не прав. вот код ниже результаты
Код:
var t=0;
var maxiteration:uint=1E7
var i_number:Number=0;
var i_int:int=0;
var i_uint:uint=0;
var i_notype=0;

t=getTimer();
for (var i:uint=0;i<maxiteration;i++){
	i_number++;	
}
trace("Number++.Itaration "+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_int++;	
}
trace("Int++.Itaration "+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_uint++;	
}
trace("Uint++.Itaration "+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_notype++;	
}
trace("Notype++.Itaration "+maxiteration+":"+(getTimer()-t));

for (i=0;i<maxiteration;i++){
	i_number+=1;	
}
trace("\nNumber+=.Itaration "+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_int+=1;	
}
trace("Int+=.Itaration "+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_uint+=1;	
}
trace("Uint+=.Itaration"+maxiteration+":"+(getTimer()-t));

t=getTimer();
for (i=0;i<maxiteration;i++){
	i_notype+=1;	
}
trace("Notype+=.Itaration "+maxiteration+":"+(getTimer()-t));

результаты:
Код:
Number++.Itaration 10000000:187
Int++.Itaration 10000000:205
Uint++.Itaration 10000000:351
Notype++.Itaration 10000000:629

Number+=.Itaration 10000000:821
Int+=.Itaration 10000000:185
Uint+=.Itaration10000000:185
Notype+=.Itaration 10000000:830


Последний раз редактировалось ramshteks; 31.08.2008 в 18:16.
Старый 31.08.2008, 18:23
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 17  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
ramshteks, вчём вы тестили? если во флесе, то у меня всё Number толькой 3й по скорости. если во флэше, то оберните всё это в одну функцию, что бы перменные стали локальными, а не создавались как свойства класса, и тогда результат будет как и во флексе.

Старый 31.08.2008, 18:25
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 18  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
ок, ща попробуемс

Старый 31.08.2008, 18:54
ramshteks вне форума Посмотреть профиль Отправить личное сообщение для ramshteks Найти все сообщения от ramshteks
  № 19  
Ответить с цитированием
ramshteks
 
Аватар для ramshteks

Регистрация: Jul 2007
Сообщений: 805
Отправить сообщение для ramshteks с помощью ICQ Отправить сообщение для ramshteks с помощью Skype™
если я таки правильно понял BlooDHounD и сделал вс прально, то прошу оценить.

код:
Код:
function TypesTest(max:uint) {
	var t:uint=getTimer();
	
	var i_int:int=0;
	for (var i:uint=0; i<max; i++) {
		i_int++;
	}
	trace("Int++.Itaration "+max+":"+(getTimer()-t));
	
	var i_uint:uint=0;
	for (i=0; i<max; i++) {
		i_uint++;
	}
	trace("Uint++.Itaration "+max+":"+(getTimer()-t));
	
	var i_number:Number=0;
	t=getTimer();
	for (i=0; i<max; i++) {
		i_number++;
	}
	trace("Number++.Itaration "+max+":"+(getTimer()-t));

	var i_notype=0;
	t=getTimer();
	for (i=0; i<max; i++) {
		i_notype++;
	}
	trace("Notype++.Itaration "+max+":"+(getTimer()-t));
	
	i_int=0;
	
	for (i=0; i<max; i++) {
		i_int+=1;
	}
	trace("\nInt+=.Itaration "+max+":"+(getTimer()-t));
	
	i_uint=0
	for (i=0; i<max; i++) {
		i_uint+=1;
	}
	trace("Uint+=.Itaration "+max+":"+(getTimer()-t));
	
	i_number=0;
	t=getTimer();
	for (i=0; i<max; i++) {
		i_number+=1;
	}
	trace("Number+=.Itaration "+max+":"+(getTimer()-t));

	i_notype=0;
	t=getTimer();
	for (i=0; i<max; i++) {
		i_notype+=1;
	}
	trace("Notype+=.Itaration "+max+":"+(getTimer()-t));
}

TypesTest(1e8);
результат:
Код:
Int++.Itaration 100000000:550
Uint++.Itaration 100000000:1113
Number++.Itaration 100000000:1203// меня это порадовало, так как я уже начал думать что надо все намберами для скорости обьявлять.
Notype++.Itaration 100000000:4347

Int+=.Itaration 100000000:4922
Uint+=.Itaration 100000000:5493
Number+=.Itaration 100000000:1203//интересный результат, в код вроде все верно.
Notype+=.Itaration 100000000:7434
надеюсь кому нибудь да будет полезно

Старый 31.08.2008, 20:10
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 20  
Ответить с цитированием
Chas
[+1 14.08.08]
[+1 20.08.08]
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
эм... чувак =) а ты переменную с текущим таймингом только один раз перед Number+= обновляешь =)
мозг включи
__________________
~
Never trouble trouble till trouble troubles you!

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:19.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 15:19.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.