• Home
  • About

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
By using Twitter’s services you agree to our Cookie Use and Data Transfer outside the EU. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.
jckarter's profile
Joe Groff
Joe Groff
Joe Groff
@jckarter

Joe Groff

@jckarter

Swift emotional support doggo

Joined January 2009
  • © 2016 Twitter
  • About
  • Help
  • Terms
  • Privacy
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @

Retweet this to your followers?

Optional comment for Retweet
 
 

Saved searches

  • Remove
  • Verified account @
Suggested users
  • Verified account @
  • Verified account @
140

Are you sure you want to delete this Tweet?

Promote this Tweet

Block

  • Add a location to your Tweets

    When you tweet with a location, Twitter stores that location. You can switch location on/off before each Tweet and always have the option to delete your location history. Learn more

    Profile summary

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    Preview

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Buy Now

    Hmm... Something went wrong. Please try again.

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    Previous Tweet Next Tweet
    1. Joe Groff ‏@jckarter 15 Oct 2015

      @robtimp @jesse_squires Unowned is faster and allows for immutability and nonoptionality. If you don't need weak, don't use it.

      0 replies 13 retweets 49 likes
    2. Chris Eidhof ‏@chriseidhof 19 Nov 2015

      @jckarter sorry to reply to an old tweet, but could you explain why unowned is faster? Is this documented?

      0 replies 1 retweet 7 likes
    3. Joe Groff ‏@jckarter 19 Nov 2015

      @chriseidhof unowned uses a second refcount in the object. weak refs are tracked in a global table.

      0 replies 7 retweets 24 likes
    4. Chris Eidhof ‏@chriseidhof 19 Nov 2015 Prenzlauer Berg, Berlin

      @jckarter thanks, that clarifies it =)

      0 replies 0 retweets 0 likes
    5. Joe Groff ‏@jckarter 19 Nov 2015

      @chriseidhof It's a space/time tradeoff. unowned can't free memory until unowned refs die, but weak frees immediately when strong refs die.

      0 replies 1 retweet 6 likes
    6. Chris Eidhof ‏@chriseidhof 19 Nov 2015 Prenzlauer Berg, Berlin

      @jckarter ah, so the second refcount tracks how many things refer to that unowned object?

      0 replies 0 retweets 1 like
    7. Joe Groff ‏@jckarter 19 Nov 2015

      @chriseidhof Yeah, so we can check whether the object is still alive before strong-retaining it again.

      0 replies 0 retweets 5 likes
    8. Chris Eidhof ‏@chriseidhof 19 Nov 2015

      @jckarter wait, so as long as there's an unowned ref, memory isn't freed? How does unowned prevent ref cycles then?

      0 replies 0 retweets 1 like
    9. Chris Eidhof ‏@chriseidhof 19 Nov 2015

      @jckarter when A refers B strongly, and B refers A unowned, it still creates a cycle? Because A only is released after unowned releases?

      0 replies 0 retweets 0 likes
      Joe Groff ‏@jckarter 19 Nov 2015

      @chriseidhof The object is destroyed and gives up all its resources when the last strong reference is released.

      • Retweets 2
      • Likes 3
      • Pitiphong P. Wayn.W.Zhang Michael Tsai Natalia Ossipova Johannes Weiß
      7:42 AM - 19 Nov 2015
      0 replies 2 retweets 3 likes
        1. Joe Groff ‏@jckarter 19 Nov 2015

          @chriseidhof The memory for the instance is still allocated but left in a zombie state.

          0 replies 1 retweet 3 likes
        2. View other replies
        3. Heath Borders ‏@heathborders 19 Nov 2015

          @jckarter @chriseidhof just to clarify: does `unowned` behave basically like `assign` in objc?

          0 replies 0 retweets 0 likes
        4. Joe Groff ‏@jckarter 19 Nov 2015

          @heathborders @chriseidhof The property doesn't keep the object alive, but the runtime still validates access to the dead object.

          0 replies 0 retweets 1 like
        5. Heath Borders ‏@heathborders 19 Nov 2015

          @jckarter @chriseidhof so if the object is dead when you access it, swift guarantees a crash whereas objc doesn't?

          0 replies 0 retweets 0 likes
        6. Joe Groff ‏@jckarter 19 Nov 2015

          @heathborders @chriseidhof Right.

          0 replies 0 retweets 0 likes
        7. View other replies
        8. Heath Borders ‏@heathborders 19 Nov 2015

          @jckarter @chriseidhof sweet. Is it ever possible to make an `assign` reference in swift? Maybe through some Unsafe API?

          0 replies 0 retweets 0 likes
        9. View other replies
        10. Joe Groff ‏@jckarter 19 Nov 2015

          @heathborders @chriseidhof There's unowned(unsafe), which is completely unmanaged.

          0 replies 1 retweet 2 likes
        1. Marcin Krzyzanowski ‏@krzyzanowskim 19 Nov 2015

          @jckarter @chriseidhof wait, so unowned is in fact strong as long as unown ref is in use? what are tou saying here?

          0 replies 0 retweets 0 likes
        2. Joe Groff ‏@jckarter 19 Nov 2015

          @krzyzanowskim @chriseidhof Strong refs keep the object alive. Unowned refs keep only the memory alive, but contents is garbage.

          0 replies 6 retweets 14 likes
        3. an0 ‏@an0 19 Nov 2015 Buffalo Grove, IL

          @jckarter @krzyzanowskim @chriseidhof so mark dead just for crashing on access?

          0 replies 0 retweets 0 likes
        4. Joe Groff ‏@jckarter 19 Nov 2015

          @an0 @krzyzanowskim @chriseidhof Right.

          0 replies 0 retweets 0 likes
        5. an0 ‏@an0 19 Nov 2015 Buffalo Grove, IL

          @jckarter @krzyzanowskim @chriseidhof how unowned(unsafe) VS unowned(safe)? unowned defaults to safe or unsafe?

          0 replies 0 retweets 0 likes
        6. View other replies
        7. Joe Groff ‏@jckarter 19 Nov 2015

          @an0 @krzyzanowskim @chriseidhof unowned is currently synonymous with unowned(safe).

          0 replies 0 retweets 0 likes
        8. an0 ‏@an0 19 Nov 2015 Lincolnshire, IL

          @jckarter @krzyzanowskim @chriseidhof but what’s the diff between safe and unsafe?

          0 replies 0 retweets 0 likes
        9. Joe Groff ‏@jckarter 19 Nov 2015

          @an0 @krzyzanowskim @chriseidhof unsafe is completely unmanaged, like __unsafe_unretained in ObjC. Dangling access is UB.

          0 replies 0 retweets 0 likes
        10. Show more
        1. Gernot ‏@Gernot 19 Nov 2015

          @jckarter @chriseidhof It even get's a bit more complicated: There's unowned(safe) and unowned(unsafe): https://devforums.apple.com/message/987086#987086 …

          0 replies 0 retweets 0 likes
        2. Joe Groff ‏@jckarter 19 Nov 2015

          @Gernot @chriseidhof, unowned(unsafe) doesn't use any refcounting or checking at all, so you get UB instead of a trap on invalid access.

          0 replies 0 retweets 0 likes
      1. Chris Eidhof ‏@chriseidhof 19 Nov 2015

        @jckarter ah, I see. But a bit of memory stays alive until all unowned references are gone as well.

        0 replies 0 retweets 0 likes

      Loading seems to be taking a while.

      Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

        Promoted Tweet

        false

        • © 2016 Twitter
        • About
        • Help
        • Terms
        • Privacy
        • Cookies
        • Ads info