Byl vydán Mozilla Firefox 152.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 152 bude brzy k dispozici také na Flathubu a Snapcraftu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.7 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.
Hříčka xsnow, která na ploše spustí sněžení, je protestware. Pokud jste v Rusku (LANG=ru), zobrazuje ukrajinské vlajky.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala beta verzi Ubuntu Touch 24.04-2.0. Nová verze již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.
V Praze probíhá Flock 2026, tj. konference pro přispěvatele a příznivce Fedory. Přednášky lze sledovat také na YouTube.
Node-RED (Wikipedie, GitHub), webová aplikace postavená na Node.js pro vizuální programování a propojování hardwarových zařízení, API a online služeb, byl vydán ve verzi 5.0. Přehled novinek v příspěvku na blogu.
Byla vydána nová verze 3.27.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opraveno bylo 5 zranitelností.
Řídící výbor GCC schválil záměr do GCC začlenit backend WebAssembly.
Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.
$ php5 -v
PHP 5.2.6-1+lenny3 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 26 2009 20:09:03)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
$ echo '<?php sleep(10); ?>' | php5 & sleep 5; ps aux | grep [p]hp
[1] 11789
messa 11789 0.0 0.1 150744 8748 pts/4 S< 18:23 0:00 php5
$ echo '<?php class C {} for ($i = 0; $i < 10000; $i++) {$arr[] = new c();} sleep(10); ?>' | php5 & sleep 5; ps aux | grep [p]hp
[2] 11795
[1]- Done echo '<?php sleep(10); ?>' | php5
messa 11795 0.4 0.1 156652 14284 pts/4 S< 18:23 0:00 php5
Vzalo si to 5536 kB, to vychází průměrně 567 byte na jeden objekt. Na C++ objekt by to bylo hodně, ale u vzhledem k tomu, že u PHP a podobných jazyků je objekt spíše slovníková struktura a nějaká další režie, mi to nepřijde tolik.
Pokud potřebuješ vytvářet mraky objektů, možná pro to PHP není to pravé. Nebo by možná stačilo jen zvýšit memory_limit, pokud je i těch 20 MB problém :)
Myslím, že gc je mi k ničemu, když všechny vytvořené objekty používám.
Memory usage with 0 objects : 0.31355285644531 MB Memory usage with 5000 objects : 2.108585357666 MB Memory usage with 10000 objects : 3.9348297119141 MB Memory usage with 15000 objects : 5.4797821044922 MB Memory usage with 20000 objects : 7.5872421264648 MB Memory usage with 25000 objects : 9.132194519043 MB Memory usage with 30000 objects : 10.677146911621 MB Memory usage with 35000 objects : 13.347118377686 MB Memory usage with 40000 objects : 14.892070770264 MB Memory usage with 45000 objects : 16.437023162842 MB Memory usage with 50000 objects : 17.98197555542 MB Memory usage with 55000 objects : 19.526927947998 MB Memory usage with 60000 objects : 21.071880340576 MB Memory usage with 65000 objects : 22.616832733154 MB Memory usage with 70000 objects : 26.411785125732 MB Memory usage with 75000 objects : 27.956737518311 MB Memory usage with 80000 objects : 29.501689910889 MB Memory usage with 85000 objects : 31.046642303467 MB Memory usage with 90000 objects : 32.591594696045 MB Memory usage with 95000 objects : 34.136547088623 MB Memory usage with 100000 objects : 35.681499481201 MB Memory peak usage : 35.682582855225 MB
$ php -v PHP 5.3.2 with Suhosin-Patch (cli) (built: Apr 2 2010 19:44:30) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend TechnologiesObsah suboru test.php
<?php
class Foo
{
public $var = '3.1415962654';
}
$arr = array();
for ( $i = 0; $i <= 100000; $i++ )
{
$a = new Foo;
if($a != null){
$arr[] = $a;
}
if($i % 5000 == 0){
echo "Memory usage with $i objects : " . memory_get_usage()/(1024*1024) . " MB \n";
}
}
echo "\nMemory peak usage : " . memory_get_peak_usage()/(1024*1024), " MB\n";
?>
Tiskni
Sdílej: