Maison >tutoriels informatiques >connaissances en informatique >Comment surveiller le temps d'exécution et l'utilisation de la mémoire des sous-threads Java
Il n'y a pas d'instruction spécifique pour vérifier la taille de la mémoire utilisée par un thread en temps réel.
Cependant, une surveillance et une analyse progressives peuvent être effectuées grâce à la méthode de comparaison avant et après.
Ajoutez d'abord une méthode statique :
public static long getmemory() {
retourner runtime.getruntime().freememory();
}
Il s'agit d'une instruction permettant de vérifier la mémoire libre au moment de l'exécution.
L'instrumentation doit donc être effectuée avant et après le point d'exécution du thread qui doit être détecté.
point long1 = getmemory();
Appel de fil de discussion
point long2 = getmemory();
Remarque : De plus, il ne devrait y avoir aucune autre interférence (appel d'autres threads ou autres opérations) pendant ce processus
Vous pouvez même effectuer une instrumentation dans le fil, puis analyser les changements numériques de tous les points et obtenir la réponse basée sur la différence numérique.
Les variables système MySQL sont divisées en variables globales et variables de session. Les modifications des variables globales affectent l'ensemble du serveur, tandis que les modifications des variables de session n'affectent que la session en cours.
Vérifiez si le journal est activé
afficher des variables comme 'general_log'
set GLOBAL general_log='ON';
SET GLOBAL general_log_file = '/tmp/mysql.log'
N'oubliez pas de l'éteindre lorsqu'il n'est pas utilisé, sinon il occupera beaucoup d'espace disque.
La commande show processlist vérifie l'instruction SQL en cours d'exécution et peut également vérifier la connexion actuelle de l'utilisateur
Afficher le journal lent
afficher les variables comme '%slow_query_log%';
afficher les variables comme 'long_query_time%' ; définir le type de SQL enregistré par le journal lent, la valeur par défaut est 10 s
log-queries-not-using-indexes : les requêtes qui n'utilisent pas d'index sont également enregistrées dans le journal des requêtes lentes. Cette variable est généralement activée
.afficher le statut pour afficher l'état d'exécution de MySQL (pour apprendre)
Par exemple, vérifiez combien d'enregistrements de requêtes lentes il y a dans MySQL : affichez le statut global comme '%Slow_queries%' ;
2. Utilisez build/envsteup.sh pour configurer le shell -
mm TARGET_PRODUCT=nom_produit
Ou directement ./build_android.sh peut également compléter la compilation.
3. Il y a trois fichiers dans le répertoire du code source : out/target/product/productname/obj/APPS/test_cert_intermediates : package.apk package.apk.unsigned package.apk.unalignementd
Copiez package.apk.unsigned et signez-le séparément.
4. Connectez-vous sous Windows : jarsigner -verbose -keystore youkey.keystore d:package.apk.unsigned youkey
5.zipalign -v 4 d:package.apk.unsigned d:package.signed.apk
Comment nodejs détecte la fin de l'exécution du processus enfant
La version
nodejs v0.12.7 child_process fournit les méthodes synchrones et asynchrones suivantes pour créer des processus :Création asynchrone :
child_process.spawn(command[, args][, options])
options.stdio
options.détachées
options.customFds
child_process.exec(commande[, options], rappel)
child_process.execFile(file[, args][, options][callback])
child_process.fork(modulePath[, args][, options])
Création synchronisée :
child_process.spawnSync(commande[, args][, options])
child_process.execFileSync(command[, args][, options])
child_process.execSync(commande[, options])
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!