- 1
- 2
- 3
- 4
- 5
case "exit":
unset($_SESSION["SITE_ADMIN"]);
header("location: {$_SERVER["PHP_SELF"]}");
die;
break;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+145
case "exit":
unset($_SESSION["SITE_ADMIN"]);
header("location: {$_SERVER["PHP_SELF"]}");
die;
break;
выход "по-мишустински"
не знаю как вам, а я словил лулзы
цопырайты уходят komprenda, он же "Istem"
+163
AClass::AClass()
{
char c;
pipe( m_ThreadPipeA );
pipe( m_ThreadPipeB );
write( m_ThreadPipeA[0], &c, sizeof(c) );
}
void AClass::JobCreatorThread()
{
char c;
do {
/* prepare new job and pass it to the thread pool */
read( m_ThreadPipeA[1], &c, sizeof(c) );
m_CurrJob = IncomingJob;
write( m_ThreadPipeB[0], &c, sizeof(c) );
} while (!m_Shutdown);
}
void AClass::ThreadPoolMethod()
{
char c;
do {
Job j;
read( m_ThreadPipeB[1], &c, sizeof(c) );
j = m_CurrJob;
write( m_ThreadPipeA[0], &c, sizeof(c) );
/* handle the job j */
} while (!m_Shutdown);
}
из архивов.
дала как-то архетиктура задание модуль распаралелить потоками - но при этом как можно меньше использовать локи, что бы проблем вертикального скалирования не возникало. и три месяца спустся они родили -о чудо!- многопоточный модуль ВООБЩЕ без локов. тока с производительностью проблемы - но это не могут быть локи потому что модуль ими ВООБЩЕ не пользуется - почему мне и дали задание посмотреть что там можно еще усовершенствовать.
мне несколько часов понадобилось что бы мой примитивный мозг смог осознать величие полета мысли моих коллег. а потом (когда я наконец из моря кода выцедил приведенную сверху эссенцию) у меня волосы дыбом встали....
лопата: чудаки пайпами симулировали мутексы/ивенты. и ведь не придерешься: архитекторы сказали локи избегать, а про пайпы ничего сказано не было.
ЗЫ ну и то что в джоб объекте еще и строковых массивов на 80К, и они постоянно копировались туды сюды, это было cherry topping ко всему этому счастью.
+152
$src = $_GET["src"];
$w = $_GET["w"];
$h = $_GET["h"];
$q = $_GET["q"];
$info = pathinfo($src);
$ext = $info["extension"];
if($ext == "jpg" or $ext == "jpeg"){
$img = imagecreatefromjpeg($src);
}
else if($ext == "gif"){
$img = imagecreatefromgif($src);
}
else if($ext == "png"){
$img = imagecreatefrompng($src);
}
$x = $w / imagesx($img);
$y = $h / imagesy($img);
$k = ($x > $y) ? $y : $x;
$nw = intval(imagesx($img) * $k);
$nh = intval(imagesy($img) * $k);
$img1 = imagecreatetruecolor($nw, $nh);
// $img1 = imagecreatefromjpeg("bj.jpg");
imagecopyresampled($img1, $img, 0, 0, 0, 0, $nw, $nh, imagesx($img), imagesy($img));
header("Content-type: image/jpeg");
imagejpeg($img1, null, $q);
imagedestroy($img);
imagedestroy($img1);
Кусман отборного калища руки Великого уё... Гудвина =)
+110
protected void Page_Load(object sender, EventArgs e)
{
Common.CheckAuthorization(Response, Session);
string uniqueID = Request["__EVENTTARGET"];
if (uniqueID != null)
{
UpdatePanel.ContentTemplateContainer.Controls.Clear();
string controlPath;
Control control = GetViewControlOnEvent(uniqueID, out controlPath);
if (control != null)
{
UpdatePanel.ContentTemplateContainer.Controls.Add(control);
Helpers.SetKeyInSession(Common.CATALOG_KEYS.CONTROL_PATH, controlPath, Session);
}
else
{
UpdatePanel.ContentTemplateContainer.Controls.Add(
GetViewControlOnSession());
}
}
else
{
if (ControlParam == null)
Helpers.SetKeyInSession(Common.CATALOG_KEYS.CONTROL_PATH, Common.PATHS.USER_CONTROLS.MAIN_CONTROL, Session);
UpdatePanel.ContentTemplateContainer.Controls.Add(
GetViewControlOnSession());
}
TreeViewState.SaveTreeView(treeCatalogs, this.GetType().ToString());
this.PreRender += OnPreRender;
}
+162
//exit;
define("CACHE_USE", false);
require("/usr/home/<path_to_config>/config.php");
require_once(PATH_CLASSES . "/DB.Class.php");
DB::connect(DBHOST, DBUSERNAME, DBPASSWORD, DBNAME);
checkLongProcesses();
sleep(30);
checkLongProcesses();
function checkLongProcesses() {
$pslist = DB::query("SHOW PROCESSLIST");
if (sizeof($pslist) > 25) {
mail("[email protected]", "SQL Processes Monitor Report", print_r($pslist, true));
echo "Killing long queries...\n\n";
foreach ($pslist as $el) {
if ($el['Time']>10) {
echo "Killing process: " . $el['Id'] . "\n";
echo $el['Info'] . "\n\n";
DB::query("KILL " . $el['Id']);
}
}
}
}
Достался проект с кодом различной говнистости. Вот такое, например, запускается кроном каждые 10 минут.
−178
select count(*) from contacts left join orders on contacts.id = orders.contactId where not ISNULL(orders.contactId)
Комментарий автора "в inner можно что-то потерять, а left всегда работает"
+118
public IProjectController ProjectController
{
[System.Diagnostics.DebuggerNonUserCode]
get
{
return _widgets[0].Widget.ProjectController;
}
[System.Diagnostics.DebuggerNonUserCode]
set
{
foreach (var c in _widgets)
c.Widget.ProjectController = value;
}
}
Коротко но зато как емко. Моя любимая часть это конечно аттрибуты - что бы дебаггер не заходил туда в момент отладки - а вдруг кто увидит
+161
CRect rcHeaderImage;
rcHeaderImage.left = listColumn.m_strText.IsEmpty() ? ( ( rcHeaderText.left + rcHeaderText.right ) / 2 ) - ( sizeIcon.cx / 2 )
- (( !m_bShowThemed
#ifndef DISABLE_XP_THEMES
|| m_thmHeader.IsThemeNull()
#endif
) ? 0 : 1 ) : rcHeaderText.left;
Вот так вот задачка "подвинуть иконку вправо на пару пикселов" превращается в нетривиальную :)
−181
function hilight { python2 -c 'import sys, re; map(lambda s: sys.stdout.write(re.sub(r"'$1'", lambda m: "\033[1;31m%s\033[0m" % m.group(0), s)), sys.stdin)' }
Это в Python или в bash?
+121
txtContacts.Text = "";
bool first = true;
foreach (string contact in contacts)
{
if (first != true)
txtContacts.Text += ";";
first = false;
txtContacts.Text += contact;
}
Думаю, кто-то хотя бы раз сталкивался с самопальным String.Join'ом