Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jvstd1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Patryk Czarnik
jvstd1
Commits
75554dbe
Commit
75554dbe
authored
Oct 30, 2024
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Przykłady XML - dodanie pomiaru pamięci po wymuszonym GC
parent
a8535eb0
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
38 additions
and
18 deletions
+38
-18
Waluty1_Dom.java
src/main/java/p20_xml/Waluty1_Dom.java
+4
-2
Waluty2_XPath.java
src/main/java/p20_xml/Waluty2_XPath.java
+4
-2
Waluty3_XPath.java
src/main/java/p20_xml/Waluty3_XPath.java
+4
-2
Waluty3a_XPath_TylkoSuma.java
src/main/java/p20_xml/Waluty3a_XPath_TylkoSuma.java
+4
-2
Waluty4_StaxEvent.java
src/main/java/p20_xml/Waluty4_StaxEvent.java
+12
-5
Waluty5_StaxStream.java
src/main/java/p20_xml/Waluty5_StaxStream.java
+10
-5
No files found.
src/main/java/p20_xml/Waluty1_Dom.java
View file @
75554dbe
...
...
@@ -47,12 +47,14 @@ public class Waluty1_Dom {
}
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas czytania pliku: %.6f s%n"
,
(
t2
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas liczenia : %.6f s%n"
,
(
t3
-
t2
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Count: "
+
count
);
if
(
count
>
0
)
{
System
.
out
.
println
(
"Avg: "
+
(
sum
/
count
));
...
...
src/main/java/p20_xml/Waluty2_XPath.java
View file @
75554dbe
...
...
@@ -52,12 +52,14 @@ public class Waluty2_XPath {
}
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas czytania pliku: %.6f s%n"
,
(
t2
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas liczenia : %.6f s%n"
,
(
t3
-
t2
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Count: "
+
count
);
if
(
count
>
0
)
{
System
.
out
.
println
(
"Sum: "
+
sum
);
...
...
src/main/java/p20_xml/Waluty3_XPath.java
View file @
75554dbe
...
...
@@ -44,10 +44,12 @@ public class Waluty3_XPath {
}
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Count: "
+
count
);
if
(
count
>
0
)
{
System
.
out
.
println
(
"Sum: "
+
sum
);
...
...
src/main/java/p20_xml/Waluty3a_XPath_TylkoSuma.java
View file @
75554dbe
...
...
@@ -35,12 +35,14 @@ public class Waluty3a_XPath_TylkoSuma {
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas czytania pliku: %.6f s%n"
,
(
t2
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas liczenia : %.6f s%n"
,
(
t3
-
t2
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Sum: "
+
sum
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
src/main/java/p20_xml/Waluty4_Stax.java
→
src/main/java/p20_xml/Waluty4_Stax
Event
.java
View file @
75554dbe
...
...
@@ -5,7 +5,12 @@ import javax.xml.stream.XMLInputFactory;
import
javax.xml.stream.events.XMLEvent
;
import
java.io.FileReader
;
public
class
Waluty4_Stax
{
/* Wersja oparta o StAX EventReader - dokument nie jest wczytywany do pamięci "na raz",
ale w każdym kroku tworzony jest (zwykle b. mały) obiekt Event (różnego typu),
co powoduje, że wydajność nie jest jeszcze optymalna,
ale za to programuje się nieco wygodniej, niż w następnej wersji.
*/
public
class
Waluty4_StaxEvent
{
public
static
void
main
(
String
[]
args
)
{
String
plik
=
"pliki/waluty2023.xml"
;
...
...
@@ -30,7 +35,7 @@ public class Waluty4_Stax {
if
(
waluta
.
equals
(
reader
.
getElementText
()))
{
uwzgledniajWalute
=
true
;
}
}
}
else
if
(
event2
.
isStartElement
()
&&
event2
.
asStartElement
().
getName
().
getLocalPart
().
equals
(
"Mid"
))
{
if
(
uwzgledniajWalute
)
{
double
mid
=
Double
.
parseDouble
(
reader
.
getElementText
());
...
...
@@ -39,7 +44,7 @@ public class Waluty4_Stax {
if
(
mid
<
min
)
min
=
mid
;
if
(
mid
>
max
)
max
=
mid
;
}
}
}
else
if
(
event2
.
isEndElement
()
&&
event2
.
asEndElement
().
getName
().
getLocalPart
().
equals
(
"Rate"
))
{
break
;
}
...
...
@@ -49,10 +54,12 @@ public class Waluty4_Stax {
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Count: "
+
count
);
if
(
count
>
0
)
{
System
.
out
.
println
(
"Sum: "
+
sum
);
...
...
src/main/java/p20_xml/Waluty5_Stax.java
→
src/main/java/p20_xml/Waluty5_Stax
Stream
.java
View file @
75554dbe
...
...
@@ -4,7 +4,10 @@ import javax.xml.stream.XMLStreamReader;
import
javax.xml.stream.XMLInputFactory
;
import
java.io.FileReader
;
public
class
Waluty5_Stax
{
/* Wersja oparta o StAX StreamReader - w tym rozwiązaniu nie są tworzone obiekty Event dla każdego kroku,
dzięki czemu jest to bardziej wydajne (gł pamięciowo), niż wersja poprzednia.
*/
public
class
Waluty5_StaxStream
{
public
static
void
main
(
String
[]
args
)
{
String
plik
=
"pliki/waluty2023.xml"
;
...
...
@@ -29,7 +32,7 @@ public class Waluty5_Stax {
if
(
waluta
.
equals
(
reader
.
getElementText
()))
{
uwzgledniajWalute
=
true
;
}
}
}
else
if
(
reader
.
isStartElement
()
&&
reader
.
getName
().
getLocalPart
().
equals
(
"Mid"
))
{
if
(
uwzgledniajWalute
)
{
double
mid
=
Double
.
parseDouble
(
reader
.
getElementText
());
...
...
@@ -38,7 +41,7 @@ public class Waluty5_Stax {
if
(
mid
<
min
)
min
=
mid
;
if
(
mid
>
max
)
max
=
mid
;
}
}
}
else
if
(
reader
.
isEndElement
()
&&
reader
.
getName
().
getLocalPart
().
equals
(
"Rate"
))
{
break
;
}
...
...
@@ -48,10 +51,12 @@ public class Waluty5_Stax {
long
t3
=
System
.
nanoTime
();
Runtime
runtime
=
Runtime
.
getRuntime
();
long
pamiec
=
runtime
.
totalMemory
()
-
runtime
.
freeMemory
();
System
.
out
.
printf
(
"Czas łączny : %.6f s%n"
,
(
t3
-
t1
)
*
1
e
-
9
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
pamiec
);
System
.
out
.
printf
(
"Zajęta pamięć : %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
gc
();
Thread
.
sleep
(
1000
);
System
.
out
.
printf
(
"Zajęta pamięć po gc: %,d B%n"
,
runtime
.
totalMemory
()
-
runtime
.
freeMemory
());
System
.
out
.
println
(
"Count: "
+
count
);
if
(
count
>
0
)
{
System
.
out
.
println
(
"Sum: "
+
sum
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment