Společnost Seznam.cz spouští konverzační nástroj založený na umělé inteligenci Seznam Asistent. Asistent využívá vlastní jazykový model SeLLMa a dočasně i komerční modely od OpenAI provozované v evropských datacentrech prostřednictvím Microsoft Azure. Dlouhodobým cílem Seznamu je provozovat Asistenta výhradně na interních jazykových modelech a ve vlastních datových centrech.
Software LibrePods osvobozuje bezdrátová sluchátka AirPods z ekosystému Applu. Exkluzivní funkce AirPods umožňuje využívat na Androidu a Linuxu. Díky zdokumentování proprietárního protokolu AAP (Apple Accessory Protocol).
Byl vydán AlmaLinux OS 10.1 s kódovým názvem Heliotrope Lion. S podporou Btrfs. Podrobnosti v poznámkách k vydání.
Placená služba prohledávání zprostředkovatelů dat a automatického odstraňování uniklých osobních údajů Mozilla Monitor Plus bude 17. prosince ukončena. Bezplatná monitorovací služba Mozilla Monitor bude i nadále poskytovat okamžitá upozornění a podrobné pokyny k omezení rizik úniku dat. Služba Mozilla Monitor Plus byla představena v únoru loňského roku.
Waydroid (Wikipedie, GitHub) byl vydán v nové verzi 1.6.0. Waydroid umožňuje spouštět aplikace pro Android na běžných linuxových distribucích. Běhové prostředí vychází z LineageOS.
Příspěvek na blogu Raspberry Pi představuje novou kompletně přepracovanou verzi 2.0 aplikace Raspberry Pi Imager (YouTube) pro stažení, nakonfigurování a zapsání obrazu operačního systému pro Raspberry Pi na SD kartu. Z novinek lze vypíchnout volitelnou konfiguraci Raspberry Pi Connect.
Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 8.00. Přináší podporu nejnovějších procesorů Intel a AMD nebo také tmavý režim.
Programovací jazyk Racket (Wikipedie), tj. jazyk z rodiny jazyků Lisp a potomek jazyka Scheme, byl vydán v nové major verzi 9.0. Hlavní novinku jsou paralelní vlákna (Parallel Threads).
Před šesti týdny bylo oznámeno, že Qualcomm kupuje Arduino. Minulý týden byly na stránkách Arduina aktualizovány podmínky používání a zásady ochrany osobních údajů. Objevily se obavy, že by otevřená povaha Arduina mohla být ohrožena. Arduino ubezpečuje, že se nic nemění a například omezení reverzního inženýrství v podmínkách používání se týká pouze SaaS cloudové aplikace.
Knihovna libpng, tj. oficiální referenční knihovna grafického formátu PNG (Portable Network Graphics), byla vydána ve verzi 1.6.51. Opraveny jsou 4 bezpečnostní chyby obsaženy ve verzích 1.6.0 (vydána 14. února 2013) až 1.6.50. Nejvážnější z chyb CVE-2025-65018 může vést ke spuštění libovolného kódu.
Dobrý den, v mém projektu mě trápí dost protivný memory leak, při jehož hledání jsem došel zhruba k následující konstrukci, která jej způsobuje:
#include <map>
#include <string>
#include <iostream>
#include <stdio.h>
#include <sstream>
using namespace std;
multimap<int,string> mapa;
int main() {
for(int i=0;i<20000;i++) {
stringstream s;
mapa.insert(make_pair(i%234,string("fdsfdsfdsfdsfdsfds")+s.str()));
};
cout<<"Mapa vytvorena"<<endl;
getc(stdin); //Zde celý program zabírá 2292 KB
cout<<"Jdu mazat"<<endl;
for(int i=0;i<234;++i) {
mapa.erase(i);
};
cout<<"smazano"<<mapa.size()<<endl;
getc(stdin); //Zde program zabírá 2312KB
};
Zajímalo by mě, proč na konci programu je stále naalokováno tolik paměti, i když mapa neobsahuje žádné záznamy. Zabranou pamět zjišťuji příkazem ps s parametrem RSS. Valgrind žádný leak neukazuje.
Stejný problém jsem narazil i u vectoru, a asi bude i u dalších kontejnerů.
Máte pro to nějaké vysvětlení? Lze nějak přikázat kontejneru/překladači, aby paměť skutečně delalokoval?
Tak nevím. ale přijde mi, že alokujete 20000 členů a pak uvolníte jenom 234, nemůže být problém tam?
std::vector<T>::capacity() - tam se to asi bude skrývat. Napadá mě leda zkusit clear(), ale nevím nevím.
Je mozny vyhradit urcitou kapacitu: std::vector(int) vec, vec.reseve(10); aby nedochazelo k realokaci behem plneni. Pokud uz mame plnej vektor a chceme jej zmensit na pocet (size()), pak zavolame std::vector<int>(vec).swap(vec);
To není memory leak, STL je prostě žrout paměti. Co kontejner schvátí, jen tak nevrátí 
Děkuji všem za odpověďi To %234, tam je pouze, abych měl v kontejneru různé prvky, z nichž některé se budou opakovat. Nechtěl jsem tím mást:) Opravdu je to tak, že STL si naalokuje paměť a tu potom používá, takže v pokud pole znovu naplním, nová paměť už se nebere...ale pouze na tomhle testovacím prográmku, v mém projektu ne :'(. Zajímalo by mě, zda existuje možnost, jak přinutit SDL aby tu paměť dealokoval (clear() nepomáhá). Zkoušel jsem to exportnutí GLIBCXX_FORCE_NEW, ale nepomáhá to. Nějaká cesta, jak přinutit SDL dealokovat paměť přece musí existovat, protože jinak by jakýkoli program - deamon, co třeba při spuštění potřebuje 100MB RAM a pak už jen 2MB žral celou dobu 100 paměti...to by přece nikdo nemohl přehlédnout:)
GLIBCXX_FORCE_NEW je určitě těžce nepřenositelné. Řešení ti popsal "puk" o pár příspěvků výše (aneb např. string(s).swap(s), obdobně pro vector apod.)
vim ~/.emacs
Tiskni
Sdílej: