Announcement

Collapse
No announcement yet.

PlayOnLinux 5 To Switch From Being Written In Python To Using Java

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Originally posted by hubick View Post
    And Java regularly benchmarks within a breath of C++ now,
    only specially crafted synthetic benchmarks
    Originally posted by hubick View Post
    Android is all Java
    that is why it is slowest and most memory hungry of smartphone oses. (actually, it uses native code when speed is critical)
    on the other hand it allows thousands not-really-programmers to write millions of shitty apps
    btw, every performant android app does memory management by hand(their authors know garbage collectors suck)
    Last edited by pal666; 05 June 2015, 05:21 PM.

    Comment


    • #62
      Originally posted by pal666 View Post
      only specially crafted synthetic benchmarks
      that is why it is slowest and most memory hungry of smartphone oses. (actually, it uses native code when speed is critical)
      on the other hand it allows thousands not-really-programmers to write millions of shitty apps
      btw, every performant android app does memory management by hand(their authors know garbage collectors suck)

      From what hole are you bringing this blashpemy out from? Please citate your "facts". No need to spread this fud here.

      Comment


      • #63
        Originally posted by pal666 View Post
        only specially crafted synthetic benchmarks
        that is why it is slowest and most memory hungry of smartphone oses. (actually, it uses native code when speed is critical)
        on the other hand it allows thousands not-really-programmers to write millions of shitty apps
        btw, every performant android app does memory management by hand(their authors know garbage collectors suck)
        Is there a difference between the Java GC and the .NET GC?
        Why is WindowsMobile more acceptable than Android?
        Last edited by seijikun; 05 June 2015, 06:34 PM.

        Comment


        • #64
          Originally posted by pal666 View Post
          (actually, it uses native code when speed is critical)
          Setting aside the rest of your comments, what exactly do you think PlayOnLinux does?

          The same exact thing - it uses native code (WINE) in all the critical speed parts.

          Comment


          • #65
            Originally posted by seijikun View Post
            Is there a difference between the Java GC and the .NET GC?
            Why is WindowsMobile more acceptable than Android?
            Well to be fair, .NET apps are usually less memory hungry than Java apps, in part because of having the capability to have unsigned ints. Also Dalvik isn't using a modern GC design unlike .NET.

            Comment


            • #66
              Originally posted by Luke_Wolf View Post
              Well to be fair, .NET apps are usually less memory hungry than Java apps, in part because of having the capability to have unsigned ints. Also Dalvik isn't using a modern GC design unlike .NET.
              I think it's more that .NET uses the stack with things like ints/structs/etc. rather than forcing even a value of int 0 to be an allocated object from the heap. (Unless java has improved recently?)

              Comment


              • #67
                Originally posted by smitty3268 View Post

                I think it's more that .NET uses the stack with things like ints/structs/etc. rather than forcing even a value of int 0 to be an allocated object from the heap. (Unless java has improved recently?)
                well true enough, they're both significant problems for efficient memory use. Although what you're pointing out is more significant yeah. If Qt# was ready at this point I'd have said they should have gone with .NET, particularly with all the nice tooling that's going to hit as a consequence of Roslyn, lilic and co.

                Personally I think they should switch to a .NET platform in the future but as it stands right now this is a good step in the right direction imo.

                Comment


                • #68
                  Originally posted by smitty3268 View Post

                  I think it's more that .NET uses the stack with things like ints/structs/etc. rather than forcing even a value of int 0 to be an allocated object from the heap. (Unless java has improved recently?)
                  Java hasn't improved this recently but this is being worked on right now and Java 9 released next year should improve the GC performance a lot... I personally think that Java is improving in a very impressive speed

                  This link gives an example of what is to come:


                  Last edited by vein; 06 June 2015, 12:32 AM.

                  Comment


                  • #69
                    Originally posted by caligula View Post

                    The latest Java versions have a revised version of (N)IO. I'd expect them to work properly so that there would be less need for native code and JNI.
                    Right, but I didn't mean native code as written by the application developer, but native resources as being used by objects of classes from the class library.

                    E.g. like java.net.Socket using a platform specific socket descriptor.
                    Back when I was doing a lot of Java (Java 2 days), some classes were designed naively to allocate their native resource at construction time and only release on garbage collection time.

                    If you needed many of these objects, e.g. processing a deep directory tree, you could run into situations where your otherwise perfectly working code would start throwing expection because newly creates Java objects would no longer be able to get their native parts.
                    You would then be faced with the option to either do the native resource handling yourself (which is a pain with JNI) or call trigger garbage collection regularily and hope for the best.

                    Thus giving garbage collection as a method unjustly a bad reputation.
                    I found that when people complain about garbage collection, it is often rooted in sitatutions such as that.

                    Comment


                    • #70
                      Originally posted by smitty3268 View Post

                      I think it's more that .NET uses the stack with things like ints/structs/etc. rather than forcing even a value of int 0 to be an allocated object from the heap. (Unless java has improved recently?)
                      Are you sure?

                      My understanding was that primitive types used as members, function arguments or local variable were always allocated on the stack.
                      And that the heap allocation problem was only triggered by autoboxing, when primitive types need to be passed to methods expecting objects, e.g. generic container.

                      Cheers,
                      _

                      Comment

                      Working...
                      X