• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

se-edu / addressbook-level4 / 4670 / 1
94%
master: 94%

Build:
DEFAULT BRANCH: master
Ran 15 Aug 2018 04:12PM UTC
Files 90
Run time 7s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Aug 2018 04:07PM UTC coverage: 92.811%. Remained the same
4670.1

push

travis-ci

pyokagan
ModelManager: remove synchronization from methods

Synchronized methods are only useful when multiple threads could access
the same object at the same time[1].

However, when our application is run, only the JavaFX application thread
should have access to the model. When running GUI tests, the main thread
(running the tests) and the JavaFX application thread will both have
access to the model, but the synchronization implemented internally in
TestFX should ensure that only one thread accesses the model at any
given time.

As such, the model does not require synchronization. If any of the above
conditions do not hold, it is a bug and should be fixed directly, not
papered over by adding locks. Depending on the JVM's implementation
details and whether is having a good or bad day, such careless use of
synchronization could lead to a performance penalty[2].

So, let's remove the synchronization from ModelManager's methods, and
remove the synchronization requirement from its javadoc.

[1]: But even then, they're not a silver bullet.
[2]: https://stackoverflow.com/a/8524882

1433 of 1544 relevant lines covered (92.81%)

0.93 hits per line

Source Files on job 4670.1
  • Tree
  • List 0
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 4423
  • Travis Job 4670.1
  • 5fedf269 on github
  • Prev Job for on master (#4664.1)
  • Next Job for on master (#4678.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc