1. Pascal / Говнокод #13281

    +124

    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
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    var
      Form1: TForm1;
      tlst:tthreadlist;
    
    implementation
    
    {$R *.dfm}
    
    function getCount : integer;
    begin
        Result := tlst.LockList.Count;
        tlst.UnlockList;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    tlst:=tthreadlist.Create;
    end;
    
    { tmythread }
    
    constructor tmythread.create(filename: string);
    begin
    self.FreeOnTerminate:=true;
    self.filename:=filename;
    inherited create(true);
    self.Priority:=tphigher;
    self.Resume;
    tlst.LockList.Add(self);
    tlst.UnlockList;
    end;
    
    destructor tmythread.destroy;
    begin
    tlst.Remove(self);
    tlst.UnlockList;
    end;
    
    procedure tmythread.execute;
    begin
    while not terminated do
    sleep(100);    // в качестве примера, чем-то нагружаем цикл.
    end;
    
    procedure TForm1.Button2Click(Sender: TObject);
    var
      i:integer;
      n:string;
      temp:tmythread;
      s:string;
    begin
      for i:=0 to getcount-1 do
      begin
        temp:=tlst.LockList.Items[i];   // вот это место. Как Вам кажется, это правильно, или не?
        if assigned(temp) then
        n:=temp.filename;
        if n='ololo' then   // это просто пример, не смеемся) АХАХАХАХ )
        begin
          showmessage('Сканирование этого файла уже выполняется') ;
          exit;
        end;
      end;
      tmythread.create('ololo');
    end;
    
    end.

    Стоит задача сканировать файлы в разных потоках. Как Вам кажется, это адекватное решение?

    Stertor, 02 Июля 2013

    Комментарии (6)
  2. C++ / Говнокод #13280

    +21

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #include <iostream>
    using namespace std;
    int main() {
        for(int i = 0; i<((cout<<'c'), 5); ((cout<<'i'), ++i)) cout<<"b";
            cout<<endl;
        return 0;
    }

    38 летний программист справа написал зачем-то такой код и сказал, что проверяет себя.
    http://ideone.com/zg6SFB

    LispGovno, 02 Июля 2013

    Комментарии (318)
  3. C++ / Говнокод #13279

    +10

    1. 1
    2. 2
    ... std::bind(&decltype(x)::bar, foo, _1);
    ... std::bind(&decltype(*foo.operator->())::bar, foo.operator->(), _1);

    С сайта, имя которого можно не называть.

    LispGovno, 02 Июля 2013

    Комментарии (3)
  4. Java / Говнокод #13278

    +69

    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
    22. 22
    static {
    	Unsafe u = null;
    	Exception ex = null;
    	try {
    		Class objectStreamClass = Class.forName("sun.misc.Unsafe");
    		Field unsafeField = objectStreamClass.getDeclaredField("theUnsafe");
    		unsafeField.setAccessible(true);
    		u = (Unsafe) unsafeField.get(null);
    	} catch (ClassNotFoundException e) {
    		ex = e;
    	} catch (SecurityException e) {
    		ex = e;
    	} catch (NoSuchFieldException e) {
    		ex = e;
    	} catch (IllegalArgumentException e) {
    		ex = e;
    	} catch (IllegalAccessException e) {
    		ex = e;
    	}
    	exception = ex;
    	unsafe = u;
    }

    xstream-1.2.2 - древнота, но попахивает...

    kostoprav, 01 Июля 2013

    Комментарии (23)
  5. PHP / Говнокод #13277

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    /**
             * you known..
             * here you find great music: http://www.youtube.com/watch?v=0lTKErnmmoA
             *
             * good, yeah? :)
             *
             */
    
            $controller = self::call($controllerName);
            $controller->preLoad();
            $controller->runBefore();

    deep, 01 Июля 2013

    Комментарии (5)
  6. C# / Говнокод #13276

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    protected Boolean GetStatus(VinRequestStatusId statusId, Int16 id)
    {
    	if(statusId == VinRequestStatusId.CarDataNeeded && id == 0)
    		return true;
    	if(statusId == VinRequestStatusId.WaitingClientAnswer && id == 1)
    		return true;
    	return false;
    }

    Разработчику гуя лень было лезть в DAL. Наложил прямо на форме.

    TauSigma, 01 Июля 2013

    Комментарии (30)
  7. C++ / Говнокод #13275

    +25

    1. 1
    2. 2
    while(_right=_right->_right)
    				delete _right;

    All right.

    LispGovno, 01 Июля 2013

    Комментарии (16)
  8. Pascal / Говнокод #13274

    +125

    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
    [QUOTE]очередной пациэнт с раком мозга. призываю тролей для проведения лоботомии.[/QUOTE]
    
    Это вопрос или утверждение?
    
    Если Вы не уверены, Вам сюда:
    [url]http://www.kaschenko.ru/ShMuZ/viewforum.php?f=72&sid=42e3532a0f5c9559bbd57b3b49f40bdb[/url]
    
    Если же уверены, сюда:
    [url]http://za-hodi.narod.ru/[/url]
    
    То, что тебе дали в руки банхаммер, еще не значит, что ты бог. Это говорит лишь о том, что админ тебе доверяет.
     А судить о том, оправдываешь ли ты его доверие, можно исходя из того, что общее впечатление от сайта крайне негативно.
     Ваш форум напоминает медленно загнивающее болото. 
    Я не увидел тут абсолютно ничего, что бы хоть как то отличало его в лучшую сторону от остальных сайтов-помоек.
     Как говорится, каков поп, таков и приход.
    
    Админ же - вообще уникальная личность. На аве у него написано "Злобный админ". 
    Это как бы предполагает издевательство над участниками. Но кто в здравом уме будет регистрироваться, чтобы терпеть издевательства админов?
     Только любители садо-мазо. А что, если мне не нравится садо - мазо? В таком случае, получается, что мне его навязывают. Делайте выводы, товарищи.

    Мастер класс нанотроллинга. Меня до сих пор не забанили )

    http://forum.boolean.name/showthread.php?p=262357#post262357

    Stertor, 01 Июля 2013

    Комментарии (0)
  9. Pascal / Говнокод #13273

    +125

    1. 1
    Безопасная работа с Tstringlist из потоков

    Товарищи, гламурно ли будет создать класс на базе tstringlist и все методы вызывать через criticalsection? Иначе потоки злобно ухмыляясь показывают голый член и грозят меня изнасиловать.

    Stertor, 30 Июня 2013

    Комментарии (1)
  10. Pascal / Говнокод #13272

    +146

    1. 1
    Бляяяяяяяяяяяяяяяяяяяяя! Где этот шекель??

    Ваш сайт меня сильно испортил. Мне перестали нравиться голые парни, а вчера приснилось, как я деру телку. Не знаю, хорошо это или плохо, но как-то необычно.

    Stertor, 30 Июня 2013

    Комментарии (1)