- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
#sub load_midi_positions_random {
##
## Вот понапишут такого кода, а потом системные администраторы виноваты что сервер тормозит ;-) ....
## У Вас есть враги ? Подарите им этот уникальный код !
##.
#
# my $dbh = get_pg_connect();
# my $sql = "SELECT count(id) FROM midi_data where name<>'Unsorted'";
# my $sth = $dbh->prepare($sql) or die $DBI::errstr;
# $sth->execute or die $DBI::errstr;
# my $i=$sth->fetchrow();
# $sth->finish or die $DBI::errstr;
#....
#my $PIC_COUNT=$i;
#my $pic1 = int (rand($i));
#my $pic2 = int (rand($i));
#my $count=0;
# while ($pic1 == $pic2 && $count < 20){
# $pic2 = int (rand($PIC_COUNT));
# $count++;
# }
# my $pic3 = int (rand($PIC_COUNT));
# $count = 0;
# while (($pic1 == $pic3 || $pic2 == $pic3 || $pic2 == $pic1) && $count < 20){
# $pic3 = int (rand($PIC_COUNT));
# $count++;
# }
# my $pic4 = int (rand($PIC_COUNT));
# $count = 0;
# while (($pic1 == $pic2 || $pic1 == $pic3 || $pic1 == $pic4 || $pic2 == $pic3 || $pic2 == $pic4 || $pic3 == $pic4) && $count < 20){
# $pic4 = int (rand($PIC_COUNT));
# $count++;
# }
# my $pic5 = int (rand($PIC_COUNT));
# $count = 0;
# while (($pic1 == $pic2 || $pic1 == $pic3 || $pic1 == $pic4 || $pic2 == $pic3 || $pic2 == $pic4 || $pic3 == $pic4 || $pic1 == $pic5 || $pic2 == $pic5
# || $pic3 == $pic5 || $pic4 == $pic5) && $count < 20){
# $pic5 = int (rand($PIC_COUNT));
# $count++;
# }
# my $pic6 = int (rand($PIC_COUNT));
# $count = 0;
# while (($pic1 == $pic2 || $pic1 == $pic3 || $pic1 == $pic4 || $pic2 == $pic3 || $pic2 == $pic4 || $pic3 == $pic4 || $pic1 == $pic5 || $pic2 == $pic5
# || $pic3 == $pic5 || $pic4 == $pic5
# || $pic1 == $pic6 || $pic2 == $pic6 || $pic3 == $pic6 || $pic4 == $pic6 || $pic5 == $pic6 ) && $count < 20){
# $pic6 = int (rand($PIC_COUNT));
# $count++;
# }
# my $pic7 = int (rand($PIC_COUNT));
# $count = 0;
# while (($pic1 == $pic2 || $pic1 == $pic3 || $pic1 == $pic4 || $pic2 == $pic3 || $pic2 == $pic4 || $pic3 == $pic4 || $pic1 == $pic5 || $pic2 == $pic5
# || $pic3 == $pic5 || $pic4 == $pic5
# || $pic1 == $pic6 || $pic2 == $pic6 || $pic3 == $pic6 || $pic4 == $pic6 || $pic5 == $pic6..
# || $pic1 == $pic7 || $pic2 == $pic7 || $pic3 == $pic7 || $pic4 == $pic7 || $pic5 == $pic7 || $pic6 == $pic7) && $count < 20
#
# ){
# $pic6 = int (rand($PIC_COUNT));
# $count++;
# }
#
# $sql = "SELECT * FROM midi_data where name<>'Unsorted' order by id";
# $sth = $dbh->prepare($sql) or die $DBI::errstr;
# $sth->execute or die $DBI::errstr;
# my @result;
# while(my @row = $sth->fetchrow){
# my $tmp = split_midi_position(@row);
# $tmp->{POSITION_NAME}=~ s/(\d{4})//;
# $tmp->{POSITION_YEAR}=$1;
# push @result, $tmp;....
# }
#my @new=();
#$new[0]=$result[$pic1];
#$new[1]=$result[$pic2];
#$new[2]=$result[$pic3];
#$new[3]=$result[$pic4];
#$new[4]=$result[$pic5];
#$new[5]=$result[$pic6];
#$new[6]=$result[$pic7];
#$sth->finish or die $DBI::errstr;
# return @new;
#}
###
Таблица midi_data > 15000 записей.
Этот код вызывался несколько раз в секунду...
guest 10.06.2009 12:33 # 0
guest 12.06.2009 07:13 # 0
guest 16.06.2009 20:41 # 0
Не знаю перл.. в чем говнокодость, в том что скуэли постоянно вызываються?
Oleg_quadro 24.08.2009 00:12 # 0
guest 11.08.2009 11:49 # 0
Ну и ещё несовпадение записей обеспечивается зачётно
454 24.08.2021 21:36 # 0