Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-02-2010, 21:34   #1
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
[Java] Accesso a files da piu'thread

Ciao a tutti!
Mi domandavo se qualcuno aveva un idea su questo mio problema:
ho una servlet che dati un percorso e delle coordinate legge una immagine ne fa il crop e salva questa immagine con un nuovo nome tipo "percorso_x_y_w_h"
Ora, sotto .NET con i files ashx (tipo servlet per intenderci) non ci son problemi di sorta. Mentre se faccio lo stesso in Java mi trovo in una situazione inquietante:
1) Leggo a.jpg, ne taglio un pezzo che chiamo b.jpg
2) Quasi contemporaneamente leggo a.jpg e ne taglio un pezzo DIVERSO che ciamo c.jpg...
3) Il risultato e'che b.jpg e c.jpg sono uguali!!!!!!!!!!!

Notare che a.jpg e'sul classpath e viene letta tramite getClassLoader().getResourceAsStream mentre b.jpg e c.jpg sono sul filesystem reale..

Per scrivere i vari files da file system uso ImageIO.write ..non e'che il metodo non e'thread safe???

Se qualcuno ha un idea si faccia avanti che sto impazzendo!! Grazie a tutti!!
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 16-02-2010, 22:46   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Non vedo problemi di thread. Probabilmente c'è un errore logico nel programma.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 16-02-2010, 22:59   #3
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Eh...

Beh, ti direi di si se non funzionasse con .Net, il codice e'praticamente lo stesso (a parte le librerie di sistema e la sintassi per intenderci), con caricamento delle risorse dalle dll e salvataggio in area temporanea, o meglio cache.. mi sarei piu'aspettato che funzionasse Java! C'e'da dire anche che sono sotto Linux con una Jvm openSource, ma mi sembra strano possa centrare.
Tra l'altro se preparo le immagini corrette nella mia cache poi vengono viste correttamente.
Poi non faccio certo cose turche, ho questa servlet che serve per caricare le immagini che legge con getResourceAsStream dal classloader una jpg (per es) dal jar, se trova una jpg nella cache con lo stesso nome legge quella e la invia al client altrimenti crea in cache la nuova immagine, la legge e la invia al client...
Sto andando di debugger ma non vedo nulla di strano!!
Adesso arrivero'a segnarmi gli id delle istanze di classe per vedere se per caso ci sono duplicati che appaiono come per magia...
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 16-02-2010, 23:18   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Java su Linux funziona allo stesso modo di Java su Windows.

Il problema è che se hai un'immagine, ne leggi due parti diverse e quelle due parti ti risultano uguali o le letture non sono diverse o vai a sovrascrivere uno dei due risultati con l'altro.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 16-02-2010, 23:33   #5
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Speravo in qualcosa del genere, in preda al delirio cosmico ho provato a caricare i files tramite la servlet uno per uno, la notizia sconvolgente e che sembra che non vengano considerate le coordinate con cui taglio l'immagine... se non altro non mi sono rimbecillito del tutto, ma a sto punto mi domando se il metodo che uso ha un senso...
Codice PHP:
//NB res e'un'array di bytes contenente l'immagine sorgente
    
BufferedImage imgRes null;
    
img ImageIO.read(new ByteArrayInputStream(res));
    
imgRes img.getSubimage(xywh);
    
ImageIO.write(imgRestype, new File(totalPath)); 
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 16-02-2010, 23:53   #6
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Qualcuno dice sia un bug...
https://bugs.launchpad.net/ubuntu/+s...a6/+bug/241346 e in effetti il mio caso

Quote:
When the source is a GIF file, getSubimage respects the width and height parameters, but uses the top left coordinate of the source image to create the destination, regardless of parameter values.
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 17-02-2010, 00:17   #7
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Nella bugparade lo danno per risolto con la versione _7 (quella attuale è la _18)

Prova a creare un buffer temporaneo:

imgRes = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
imgRes.getGraphics().drawImage(img, -x, -y, null);
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 17-02-2010, 08:31   #8
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Ed in effetti colla copia del buffer funziona magicamente tutto e si "dimentica" di essere una gif... Per la cronaca, se accade ad altri, il "java -version" mi dava questo:
Codice PHP:
java version "1.6.0_0"
OpenJDK Runtime Environment (IcedTea6 1.6.2) (suse-5.10.1-x86_64)
OpenJDK 64-Bit Server VM (build 14.0-b16mixed mode
E grazie per aiuto & collaborazione! Ieri sera poi sono crollato col pc acceso

Ultima modifica di zakmckraken : 17-02-2010 alle 08:32. Motivo: ringraziamenti!
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Il nucleo della cometa interstellare 3I/...
La Russia potrebbe sviluppare un'arma pe...
Manda la RAM Corsair in assistenza, rice...
ASUS ROG G1000 con 'AniMe Holo': saranno...
Un test di longevità ha messo alla prova...
Incat inizia i test dell'incredibile tra...
LG Sound Suite: al CES il sistema audio ...
Avengers Doomsday, il primo trailer &egr...
La crisi delle memorie non farà sconti a...
Il trailer più atteso dell'anno &...
I gamer vogliono i monitor OLED: sopratt...
Samsung alza l’asticella dei televisori ...
Energie rinnovabili 2025: quasi 42% del ...
Le auto elettriche volano in tutta Europ...
Nuovo look per la finestra Esegui su Win...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:31.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v