expert vraagje mbt exceptions

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ozzie PHP

Ozzie PHP

08/01/2014 22:19:57
Quote Anchor link
Ola,

Een vraagje voor de experts. Op het moment dat je een try/catch blok gebruikt, houdt PHP er dan rekening mee dat alle code binnen het try-blok een exception kan gooien? Wordt daar als het ware "real-time" op gemonitord d.m.v. een "listener" of iets dergelijks? Of wordt er pas op het moment dat er een exception wordt gegooid, gekeken of er een try-blok omheen staat?

Waarom ik dit vraag... stel ik heb 10 regels code. Binnen deze code kan nooit een exception worden gegooid. Als ik deze 10 regels nu toch binnen een try-blok heb staan en PHP gaat dan toch monitoren of er ergens een exception wordt gegooid (terwijl dat dus onmogelijk is) dan gaat dat onnodig ten koste van de performance. Maar als er niet wordt gemonitord, dan maakt het niet uit.

Iemand die dit weet toevallig?
Gewijzigd op 08/01/2014 22:20:43 door Ozzie PHP
 
PHP hulp

PHP hulp

23/11/2024 23:51:41
 
Wouter J

Wouter J

08/01/2014 22:29:34
Quote Anchor link
micro-optimalisatie? Dacht dat je daar overheen was gegroeid...
 
Chris -

Chris -

08/01/2014 22:33:10
Quote Anchor link
Ozzie PHP op 08/01/2014 22:19:57:
Ola,

Waarom ik dit vraag... stel ik heb 10 regels code. Binnen deze code kan nooit een exception worden gegooid. Als ik deze 10 regels nu toch binnen een try-blok heb staan en PHP gaat dan toch monitoren of er ergens een exception wordt gegooid (terwijl dat dus onmogelijk is) dan gaat dat onnodig ten koste van de performance. Maar als er niet wordt gemonitord, dan maakt het niet uit.


waarom er een try/catch om heen zetten als je het niet gebruikt.....
 
Ozzie PHP

Ozzie PHP

08/01/2014 22:57:56
Quote Anchor link
@Chris:

Dat is dus mijn vraag.

Soms is het duidelijker om zoiets te doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
try {
  // code waar geen exception kan worden gegooid
  // code waar geen exception kan worden gegooid
  // code waar exception kan worden gegooid
  // code waar exception kan worden gegooid
  // code waar geen exception kan worden gegooid
  // code waar geen exception kan worden gegooid
  // code waar exception kan worden gegooid
  // code waar exception kan worden gegooid

} catch (Exception $e) {

}

?>

in plaats van dit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
// code waar geen exception kan worden gegooid
// code waar geen exception kan worden gegooid

try {
  // code waar exception kan worden gegooid
  // code waar exception kan worden gegooid

} catch (Exception $e) {

}

// code waar geen exception kan worden gegooid
// code waar geen exception kan worden gegooid

try {
  // code waar exception kan worden gegooid
  // code waar exception kan worden gegooid

} catch (Exception $e) {

}

?>

Optie 1 vind ik duidelijker, maar ik ben benieuwd of het een aanslag is op je performance, of dat het geen (noemenswaardig) verschil maakt.

@Wouter:

Zou je aub een keer willen stoppen met continue die micro-optimalisatie aan te halen. Ik word er een beetje moe van. Ik stel een vraag omdat ik wil weten hoe iets werkt en ik hoef dan niet iedere keer belerend te worden toegesproken. Het gaat mij erom of het wel of niet extra performance kost als je code die geen exception kan gooien toch binnen een try-blok zet. Wordt er dan gemonitord? Dat is mijn enige vraag.
 
Wouter J

Wouter J

09/01/2014 07:58:50
 
Ozzie PHP

Ozzie PHP

09/01/2014 16:32:58
Quote Anchor link
Thanks Wouter.

Offtopic:

Excuses voor mijn "uitbrander". Kwam misschien wat harder over dan bedoeld.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.